Function at 0x49c1e0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x68]
cmp eax, dword [ecx + 8]
jbe 0x49e4b4
sub esp, 0xe8
mov ecx, dword [esp + 0x100]
test ecx, ecx
jle 0x49e3c0
mov edx, dword [esp + 0xf8]
test edx, edx
je 0x49c226
test edx, 0x60
je 0x49e343
mov edi, dword [esp + 0xec]
mov dword [edi + 0xc], 0
mov ebx, dword [0x7db370]
test ebx, ebx
jne 0x49e32c
mov dword [edi + 0x10], 0
mov dword [edi + 0x1c], edx
mov ebx, dword [0x7db370]
test ebx, ebx
jne 0x49e2f6
mov ebx, dword [esp + 0xf0]
mov dword [edi + 0x14], ebx
mov ebp, dword [esp + 0xf4]
mov dword [edi + 0x18], ebp
mov esi, edx
and edx, 0x1f
mov dword [esp + 0x80], edx
cmp edx, 0x10
jbe 0x49dec8
cmp edx, 0x15
ja 0x49d6ef
cmp edx, 0x13
ja 0x49ccd0
cmp edx, 0x11
jne 0x49cc8b
mov eax, dword [esp + 0xfc]
cmp eax, 0x71
jg 0x49cc74
cmp eax, 0x58
jne 0x49cc66
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0048e8c0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x3c], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x84], ecx
mov edx, dword [eax + 0x28]
mov dword [esp], ecx
call edx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov eax, dword [eax + 0x50]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
cmp eax, 8
jne 0x49c5c7
mov eax, dword [esp + 0x80]
cmp eax, 0x17
je 0x49c591
mov eax, dword [esp + 0xf8]
test eax, 0x100
jne 0x49c511
mov ecx, dword [esp + 0xf0]
mov dword [esp], ecx
mov edx, dword [esp + 0xf4]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.0048d8a0
mov eax, dword [esp + 0xc]
lea ecx, [0x5dfee0]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.00437b80
mov eax, dword [esp + 0x10]
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x9c], ecx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x70], edx
xor ebx, ebx
jmp 0x49c38e
mov ebp, dword [esp + 0x9c]
mov byte [ebp + ecx], al
lea ebx, [ecx + 1]
mov eax, edx
mov ecx, ebp
mov edx, dword [esp + 0x70]
cmp ebx, eax
jge 0x49c4a0
mov dword [esp + 0x68], ebx
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf4]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xf8]
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebx
call fcn.0048d4c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
and ecx, 0x1f
mov dword [esp + 0x80], ecx
cmp ecx, 9
ja 0x49c45e
cmp ecx, 7
jne 0x49c3f6
mov eax, dword [eax]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jb 0x49c378
jmp 0x49e459
cmp ecx, 8
jne 0x49c40a
movzx eax, byte [eax]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jmp 0x49c3ef
cmp ecx, 9
jne 0x49c41e
movzx eax, word [eax]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jmp 0x49c3ef
lea eax, [0x5f0e00]
mov dword [esp], eax
call fcn.00409a30
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x12
mov eax, dword [0x7db370]
test eax, eax
jne 0x49c44e
lea eax, [0x6200ef]
mov dword [edi], eax
jmp 0x49e3cc
lea eax, [0x6200ef]
call fcn.0044b680
jmp 0x49e3cc
cmp ecx, 0xa
jne 0x49c474
mov eax, dword [eax]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jmp 0x49c3ef
cmp ecx, 0xb
jne 0x49c48a
mov eax, dword [eax]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jmp 0x49c3ef
cmp ecx, 0xc
jne 0x49c41e
mov eax, dword [eax]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jmp 0x49c3ef
mov dword [esp + 0x70], edx
mov dword [esp + 0x6c], eax
mov dword [esp + 0x9c], ecx
mov ebx, dword [esp + 0x3c]
mov ebx, dword [ebx + 0x80]
mov ebp, dword [esp + 0x84]
mov dword [esp], ebp
call ebx
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0xec]
mov dword [esp], edx
mov edx, dword [esp + 0x9c]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x6c]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x70]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0xfc]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], eax
call fcn.0049a430
add esp, 0xe8
ret
mov ecx, dword [esp + 0xf0]
mov dword [esp], ecx
mov edx, dword [esp + 0xf4]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.0048d8a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xf0]
mov dword [esp], ecx
mov ecx, dword [esp + 0xf4]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0xf8]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], eax
call fcn.0048e570
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0048cb60
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
jmp 0x49c4a0
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov eax, dword [esp + 0xf4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xf8]
mov dword [esp + 8], eax
call fcn.0048cb60
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
jmp 0x49c4a0
mov eax, dword [esp + 0xec]
movzx ecx, byte [eax + 0x2c]
test cl, cl
jne 0x49c7eb
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
mov ebx, dword [eax]
lea ebp, [edx + 1]
cmp ebp, ecx
jg 0x49c799
lea ecx, [edx + 1]
mov dword [eax + 4], ecx
mov byte [ebx + edx], 0x5b
xor ecx, ecx
jmp 0x49c66b
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov edx, dword [esp + 0xf4]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0xf8]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
call fcn.0048d4c0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xec]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x100]
lea edx, [ecx + 1]
mov dword [esp + 0x14], edx
call fcn.0049c1e0
mov eax, dword [esp + 0x58]
lea ecx, [eax + 1]
mov dword [esp + 0x58], ecx
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov edx, dword [esp + 0xf4]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0xf8]
mov dword [esp + 8], ebx
call fcn.0048d8a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x58]
cmp ecx, eax
jge 0x49c724
test ecx, ecx
jle 0x49c5fb
mov eax, dword [esp + 0xec]
mov edx, dword [eax + 4]
lea ebx, [edx + 1]
mov ebp, dword [eax + 8]
mov esi, dword [eax]
cmp ebx, ebp
jg 0x49c6d1
lea ebx, [edx + 1]
mov dword [eax + 4], ebx
mov byte [esi + edx], 0x20
jmp 0x49c5fb
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00437c50
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0x7db370]
test edx, edx
jne 0x49c71d
mov dword [edi], eax
mov edx, ecx
mov esi, eax
mov eax, edi
mov ecx, dword [esp + 0x58]
jmp 0x49c6c2
call fcn.0044b680
jmp 0x49c711
mov eax, dword [esp + 0xec]
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax + 8]
mov ebp, dword [eax]
cmp edx, ebx
jg 0x49c74c
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebp + ecx], 0x5d
add esp, 0xe8
ret
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.00437c50
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0x7db370]
test edx, edx
jne 0x49c792
mov dword [edi], eax
mov ebp, eax
mov eax, edi
jmp 0x49c73a
call fcn.0044b680
jmp 0x49c78c
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
call fcn.00437c50
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0x7db370]
test edx, edx
jne 0x49c7e4
mov dword [edi], eax
mov edx, ecx
mov ebx, eax
mov eax, edi
jmp 0x49c5ed
call fcn.0044b680
jmp 0x49c7d9
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf4]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xf8]
mov dword [esp + 8], edx
call fcn.0048e8c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x80]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 8]
mov dword [esp + 0x50], eax
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0xec]
mov ebx, dword [edx + 4]
mov dword [esp + 0x7c], ebx
lea ebp, [eax + ebx]
mov dword [esp + 0x78], ebp
mov esi, dword [edx + 8]
mov edi, dword [edx]
cmp ebp, esi
ja 0x49cc1a
cmp ebp, esi
ja 0x49e452
mov dword [esp + 0x74], esi
mov dword [esp + 0xb0], edi
lea edx, [edi + ebx]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0044be80
mov eax, dword [esp + 0x78]
mov edi, dword [esp + 0xec]
mov dword [edi + 4], eax
mov ecx, dword [esp + 0x74]
mov dword [edi + 8], ecx
mov edx, dword [0x7db370]
test edx, edx
jne 0x49cbfe
mov edx, dword [esp + 0xb0]
mov dword [edi], edx
mov ebx, dword [esp + 0x80]
cmp ebx, 0x17
jne 0x49cbf2
add ebx, 0xffffffeb
cmp ebx, 1
ja 0x49cbd0
mov ebx, dword [esp + 0xf8]
test ebx, 0x200
je 0x49cb09
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0x50]
lea ebp, [esi + ebp + 1]
cmp ebp, ecx
jg 0x49cab2
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [edx + eax], 0x7b
xor eax, eax
jmp 0x49c969
mov ecx, dword [esp + 0xf0]
mov dword [esp], ecx
mov edx, dword [esp + 0xf4]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0xf8]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
call fcn.0048d4c0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xec]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x100]
lea edx, [ecx + 1]
mov dword [esp + 0x14], edx
call fcn.0049c1e0
mov eax, dword [esp + 0x5c]
inc eax
mov ebx, dword [esp + 0xf8]
mov dword [esp + 0x5c], eax
mov ecx, dword [esp + 0xf0]
mov dword [esp], ecx
mov edx, dword [esp + 0xf4]
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
call fcn.0048d8a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x5c]
cmp ecx, eax
jge 0x49ca3f
test ecx, ecx
jle 0x49ca38
mov edi, dword [esp + 0xec]
mov edx, dword [edi + 4]
lea ebx, [edx + 2]
mov ebp, dword [edi + 8]
mov esi, dword [edi]
cmp ebx, ebp
ja 0x49c9f5
cmp ebx, ebp
ja 0x49e444
mov eax, ecx
movzx ecx, word [0x61c1de]
mov word [esi + edx], cx
mov dword [edi + 4], ebx
mov dword [edi + 8], ebp
mov ecx, dword [0x7db370]
test ecx, ecx
jne 0x49c9e5
mov dword [edi], esi
jmp 0x49c8f4
mov ecx, eax
mov eax, esi
call fcn.0044b680
mov eax, ecx
jmp 0x49c8f4
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x78], edx
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00437c50
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x78]
mov ebx, dword [esp + 0x7c]
mov edi, dword [esp + 0xec]
jmp 0x49c9b9
mov eax, ecx
jmp 0x49c8f4
mov eax, dword [esp + 0xec]
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax + 8]
mov ebp, dword [eax]
cmp edx, ebx
jg 0x49ca65
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebp + ecx], 0x7d
jmp 0x49c745
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.00437c50
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0x7db370]
test edx, edx
jne 0x49caab
mov dword [edi], eax
mov ebp, eax
mov eax, edi
jmp 0x49ca55
call fcn.0044b680
jmp 0x49caa5
lea ebx, [0x5dfee0]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
call fcn.00437c50
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0x7db370]
test edx, edx
jne 0x49cb02
mov dword [edi], eax
mov ebx, dword [esp + 0xf8]
mov edx, eax
mov eax, ecx
jmp 0x49c8e6
call fcn.0044b680
jmp 0x49caf2
test ebx, 0x80
je 0x49cbc2
mov ebp, dword [esp + 0xf4]
mov esi, dword [ebp]
test esi, esi
xchg esi, ebx
setne bl
xchg esi, ebx
xor esi, 1
xchg esi, eax
test al, al
xchg esi, eax
je 0x49c8d2
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x50]
lea ebx, [ebp + ebx + 5]
cmp ebx, ecx
ja 0x49cb87
cmp ebx, ecx
ja 0x49e44b
mov ebp, dword [0x61c6db]
movzx esi, byte [0x61c6df]
mov dword [edx + eax], ebp
xchg esi, ebx
mov byte [edx + eax + 4], bl
xchg esi, ebx
mov dword [edi + 4], ebx
mov dword [edi + 8], ecx
mov ecx, dword [0x7db370]
test ecx, ecx
jne 0x49cb7e
mov dword [edi], edx
add esp, 0xe8
ret
mov eax, edx
call fcn.0044b680
jmp 0x49cb77
mov dword [esp + 0x7c], ebx
lea ebp, [0x5dfee0]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
call fcn.00437c50
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x78]
mov ebx, dword [esp + 0x7c]
mov edi, dword [esp + 0xec]
jmp 0x49cb45
mov ebp, dword [esp + 0xf4]
mov esi, ebp
jmp 0x49cb1f
mov ebp, dword [esp + 0xf4]
mov ebx, dword [ebp]
test ebx, ebx
xchg esi, ebx
setne bl
xchg esi, ebx
xor esi, 1
mov ebx, dword [esp + 0xf8]
jmp 0x49cb2b
mov ebx, dword [esp + 0xf8]
jmp 0x49c8d2
mov edx, eax
mov eax, dword [esp + 0xb0]
call fcn.0044b680
mov eax, edx
mov edx, dword [esp + 0xb0]
jmp 0x49c8a3
mov dword [esp + 0x88], ecx
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
call fcn.00437c50
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0xec]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x78]
jmp 0x49c851
cmp eax, 0x71
je 0x49c2b7
jmp 0x49c5c7
cmp eax, 0x73
je 0x49c2b7
cmp eax, 0x78
je 0x49c2b7
jmp 0x49c5c7
lea eax, [edx - 0x12]
cmp eax, 1
ja 0x49ccb7
mov dword [esp], edi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], esi
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
call fcn.0049ac20
jmp 0x49c745
mov dword [esp], edi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], esi
call fcn.00499360
jmp 0x49c745
cmp edx, 0x14
je 0x49d440
movzx edx, byte [edi + 0x2c]
test dl, dl
jne 0x49d199
mov edx, dword [edi + 4]
mov eax, ecx
lea ecx, [edx + 4]
mov esi, dword [edi]
mov ebp, dword [edi + 8]
cmp ecx, ebp
ja 0x49d149
cmp ecx, ebp
ja 0x49e491
mov ebx, dword [0x61c60b]
mov dword [esi + edx], ebx
mov dword [edi + 4], ecx
mov dword [edi + 8], ebp
mov ecx, dword [0x7db370]
test ecx, ecx
jne 0x49d139
mov dword [edi], esi
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf4]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xf8]
mov dword [esp + 8], edx
call fcn.0048dc10
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
test eax, eax
jle 0x49cf19
mov dword [esp + 0x54], eax
mov edx, dword [esp + 0xec]
mov ebx, dword [esp + 0x100]
mov ebp, dword [esp + 0xfc]
xor esi, esi
jmp 0x49cda5
mov edx, dword [esp + 0xac]
add edx, 0xc
mov ebx, dword [esp + 0xec]
mov ebp, dword [esp + 0x100]
mov esi, dword [esp + 0xfc]
mov ebx, ebp
mov ebp, esi
mov ecx, edx
mov esi, eax
mov eax, dword [esp + 0x54]
mov edx, dword [esp + 0xec]
mov dword [esp + 0xac], ecx
mov dword [esp + 0x64], esi
mov edi, ebx
mov ebx, dword [ecx + 8]
mov dword [esp + 0x80], ebx
mov ebp, dword [ecx + 4]
mov dword [esp + 0xa8], ebp
mov ecx, dword [ecx]
mov dword [esp + 0xa4], ecx
test esi, esi
jle 0x49ce25
movzx esi, byte [edx + 0x2c]
xchg esi, eax
test al, al
xchg esi, eax
je 0x49d0b5
mov esi, dword [edx + 4]
lea ebx, [esi + 2]
mov ebp, dword [edx + 8]
mov ecx, dword [edx]
cmp ebx, ebp
ja 0x49d068
cmp ebx, ebp
ja 0x49e48a
mov dword [esp + 0x7c], ebp
movzx ebp, word [0x61c1de]
mov word [ecx + esi], bp
mov dword [edx + 4], ebx
mov ebx, dword [esp + 0x7c]
mov dword [edx + 8], ebx
mov ebx, dword [0x7db370]
test ebx, ebx
jne 0x49d052
mov dword [edx], ecx
mov dword [esp], edx
mov eax, dword [esp + 0xa4]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0xa8]
mov dword [esp + 8], ecx
mov ebx, dword [esp + 0x80]
mov dword [esp + 0xc], ebx
mov ebp, dword [esp + 0xfc]
mov dword [esp + 0x10], ebp
lea esi, [edi + 1]
mov dword [esp + 0x7c], esi
mov dword [esp + 0x14], esi
call fcn.0049c1e0
mov eax, dword [esp + 0xec]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
mov ebx, dword [eax]
lea ebp, [edx + 1]
cmp ebp, ecx
jg 0x49d000
lea ecx, [edx + 1]
mov dword [eax + 4], ecx
mov byte [ebx + edx], 0x3a
mov ecx, dword [esp + 0xf0]
mov dword [esp], ecx
mov edx, dword [esp + 0xf4]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0xf8]
mov dword [esp + 8], ebx
mov ebp, dword [esp + 0xa4]
mov dword [esp + 0xc], ebp
mov ebp, dword [esp + 0xa8]
mov dword [esp + 0x10], ebp
mov ebp, dword [esp + 0x80]
mov dword [esp + 0x14], ebp
call fcn.0048da40
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xec]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x14], ecx
call fcn.0049c1e0
mov eax, dword [esp + 0x64]
inc eax
mov ecx, dword [esp + 0x54]
cmp eax, ecx
jl 0x49cd73
mov eax, dword [esp + 0xec]
movzx ecx, byte [eax + 0x2c]
test cl, cl
je 0x49cf93
mov ecx, dword [eax + 4]
mov edx, dword [eax + 8]
mov ebx, dword [eax]
lea ebp, [ecx + 1]
cmp ebp, edx
jg 0x49cf46
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebx + ecx], 0x7d
jmp 0x49c745
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ebp
call fcn.00437c50
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0x7db370]
test edx, edx
jne 0x49cf8c
mov dword [edi], eax
mov ebx, eax
mov eax, edi
jmp 0x49cf37
call fcn.0044b680
jmp 0x49cf86
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
mov ebx, dword [eax]
lea ebp, [edx + 1]
cmp ebp, ecx
jg 0x49cfb1
lea ecx, [edx + 1]
mov dword [eax + 4], ecx
mov byte [ebx + edx], 0x5d
jmp 0x49c745
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
call fcn.00437c50
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0x7db370]
test edx, edx
jne 0x49cff9
mov dword [edi], eax
mov edx, ecx
mov ebx, eax
mov eax, edi
jmp 0x49cfa2
call fcn.0044b680
jmp 0x49cff1
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
call fcn.00437c50
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0x7db370]
test edx, edx
jne 0x49d04b
mov dword [edi], eax
mov edx, ecx
mov ebx, eax
mov eax, edi
jmp 0x49ce7e
call fcn.0044b680
jmp 0x49d040
mov ebx, edi
mov edi, edx
mov ebp, eax
mov eax, ecx
call fcn.0044b680
mov eax, ebp
mov edi, ebx
jmp 0x49ce25
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x78], esi
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00437c50
mov ebp, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x54]
mov edx, dword [esp + 0xec]
mov ebx, dword [esp + 0x7c]
mov esi, dword [esp + 0x78]
mov edi, dword [esp + 0x100]
jmp 0x49cdf4
mov esi, dword [edx + 4]
mov eax, dword [edx]
mov edi, dword [edx + 8]
lea ebx, [esi + 1]
cmp ebx, edi
jg 0x49d0de
lea ebx, [esi + 1]
mov dword [edx + 4], ebx
mov byte [eax + esi], 0x20
mov eax, dword [esp + 0x54]
mov edi, dword [esp + 0x100]
jmp 0x49ce25
lea ecx, [0x5dfee0]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], esi
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ebx
call fcn.00437c50
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0x7db370]
test edx, edx
jne 0x49d132
mov dword [edi], eax
mov edx, edi
mov ebp, dword [esp + 0xa8]
mov esi, ecx
mov ecx, dword [esp + 0xa4]
jmp 0x49d0c4
call fcn.0044b680
jmp 0x49d11e
mov ecx, eax
mov eax, esi
call fcn.0044b680
mov eax, ecx
jmp 0x49cd21
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x78], edx
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ecx
call fcn.00437c50
mov ebp, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x100]
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x78]
mov ebx, dword [esp + 0xf0]
mov edi, dword [esp + 0xec]
jmp 0x49ccfa
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0048e8c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x80]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp + 0x4c], ecx
mov edx, dword [esp + 0xec]
mov ebx, dword [edx + 4]
mov dword [esp + 0x7c], ebx
lea ebp, [ecx + ebx]
mov dword [esp + 0x78], ebp
mov esi, dword [edx + 8]
mov edi, dword [edx]
cmp ebp, esi
ja 0x49d3f4
cmp ebp, esi
ja 0x49e49f
mov dword [esp + 0x74], esi
mov dword [esp + 0xb0], edi
lea edx, [edi + ebx]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.0044be80
mov eax, dword [esp + 0x78]
mov edi, dword [esp + 0xec]
mov dword [edi + 4], eax
mov ecx, dword [esp + 0x74]
mov dword [edi + 8], ecx
mov edx, dword [0x7db370]
test edx, edx
jne 0x49d3d8
mov edx, dword [esp + 0xb0]
mov dword [edi], edx
mov ebx, dword [esp + 0x80]
lea ebp, [ebx - 0x15]
cmp ebp, 1
ja 0x49d398
mov ebx, dword [esp + 0xf8]
test ebx, 0x200
je 0x49d2d1
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0x4c]
lea ebp, [esi + ebp + 1]
cmp ebp, ecx
jg 0x49d27d
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [edx + eax], 0x7b
jmp 0x49cd21
lea ebx, [0x5dfee0]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
call fcn.00437c50
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0x7db370]
test edx, edx
jne 0x49d2ca
mov dword [edi], eax
mov ebx, dword [esp + 0xf8]
mov edx, eax
mov eax, ecx
jmp 0x49d26e
call fcn.0044b680
jmp 0x49d2bd
test ebx, 0x80
je 0x49d38a
mov ebp, dword [esp + 0xf4]
mov esi, dword [ebp]
test esi, esi
xchg esi, ebx
setne bl
xchg esi, ebx
xor esi, 1
xchg esi, eax
test al, al
xchg esi, eax
je 0x49d25e
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x4c]
lea ebx, [ebp + ebx + 5]
cmp ebx, ecx
ja 0x49d34f
cmp ebx, ecx
ja 0x49e498
mov ebp, dword [0x61c6db]
movzx esi, byte [0x61c6df]
mov dword [edx + eax], ebp
xchg esi, ebx
mov byte [edx + eax + 4], bl
xchg esi, ebx
mov dword [edi + 4], ebx
mov dword [edi + 8], ecx
mov ecx, dword [0x7db370]
test ecx, ecx
jne 0x49d346
mov dword [edi], edx
add esp, 0xe8
ret
mov eax, edx
call fcn.0044b680
jmp 0x49d33f
mov dword [esp + 0x7c], ebx
lea ebp, [0x5dfee0]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
call fcn.00437c50
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x78]
mov ebx, dword [esp + 0x7c]
mov edi, dword [esp + 0xec]
jmp 0x49d30d
mov ebp, dword [esp + 0xf4]
mov esi, ebp
jmp 0x49d2e7
lea eax, [0x5f0e00]
mov dword [esp], eax
call fcn.00409a30
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x13
mov eax, dword [0x7db370]
test eax, eax
jne 0x49d3c8
lea eax, [0x6208ad]
mov dword [edi], eax
jmp 0x49e3ea
lea eax, [0x6208ad]
call fcn.0044b680
jmp 0x49e3ea
mov edx, eax
mov eax, dword [esp + 0xb0]
call fcn.0044b680
mov eax, edx
mov edx, dword [esp + 0xb0]
jmp 0x49d23c
mov dword [esp + 0x90], eax
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
call fcn.00437c50
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0xec]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x78]
jmp 0x49d1ea
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0048d230
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0xc]
test ecx, ecx
jne 0x49d6b8
mov edi, dword [esp + 0xec]
movzx ecx, byte [edi + 0x2c]
test cl, cl
jne 0x49d50a
mov ecx, dword [edi + 4]
lea edx, [ecx + 5]
mov ebx, dword [edi + 8]
mov ebp, dword [edi]
cmp edx, ebx
ja 0x49d4c8
cmp edx, ebx
ja 0x49e460
mov esi, dword [0x61c735]
mov eax, ebx
movzx ebx, byte [0x61c739]
mov dword [ebp + ecx], esi
mov byte [ebp + ecx + 4], bl
mov dword [edi + 4], edx
mov dword [edi + 8], eax
mov ecx, dword [0x7db370]
test ecx, ecx
jne 0x49d4bc
mov dword [edi], ebp
jmp 0x49c745
mov eax, ebp
call fcn.0044b680
jmp 0x49c745
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], ecx
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.00437c50
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x7c]
mov edi, dword [esp + 0xec]
jmp 0x49d486
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov eax, dword [esp + 0xf4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xf8]
mov dword [esp + 8], eax
call fcn.0048e8c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x80]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 8]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0xec]
mov ebx, dword [edx + 4]
mov dword [esp + 0x7c], ebx
lea ebp, [eax + ebx]
mov dword [esp + 0x78], ebp
mov esi, dword [edx + 8]
mov edi, dword [edx]
cmp ebp, esi
ja 0x49d66c
cmp ebp, esi
ja 0x49e46e
mov dword [esp + 0xb0], edi
mov dword [esp + 0x74], esi
lea edx, [edi + ebx]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0044be80
mov eax, dword [esp + 0x78]
mov edi, dword [esp + 0xec]
mov dword [edi + 4], eax
mov ecx, dword [esp + 0x74]
mov dword [edi + 8], ecx
mov edx, dword [0x7db370]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x48]
lea ebx, [ebp + ebx + 5]
test edx, edx
jne 0x49d650
mov edx, dword [esp + 0xb0]
mov dword [edi], edx
cmp ebx, ecx
ja 0x49d615
cmp ebx, ecx
ja 0x49e467
mov ebp, dword [0x61c6db]
movzx esi, byte [0x61c6df]
mov dword [edx + eax], ebp
xchg esi, ebx
mov byte [edx + eax + 4], bl
xchg esi, ebx
mov dword [edi + 4], ebx
mov dword [edi + 8], ecx
mov ecx, dword [0x7db370]
test ecx, ecx
jne 0x49d609
mov dword [edi], edx
jmp 0x49c745
mov eax, edx
call fcn.0044b680
jmp 0x49c745
mov dword [esp + 0x7c], ebx
lea ebp, [0x5dfee0]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
call fcn.00437c50
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x78]
mov ebx, dword [esp + 0x7c]
mov edi, dword [esp + 0xec]
jmp 0x49d5d2
mov edx, eax
mov eax, dword [esp + 0xb0]
call fcn.0044b680
mov eax, edx
mov edx, dword [esp + 0xb0]
jmp 0x49d5ce
mov dword [esp + 0x8c], ecx
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
call fcn.00437c50
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0xec]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x78]
jmp 0x49d570
mov ebx, dword [esp + 0xec]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x100]
inc eax
mov dword [esp + 0x14], eax
call fcn.0049c1e0
jmp 0x49c745
cmp edx, 0x17
ja 0x49d896
cmp edx, 0x16
jne 0x49c29e
test ecx, ecx
jne 0x49cc93
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0048dfc0
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x49d742
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xf4]
mov esi, dword [esp + 0xf8]
mov edi, dword [esp + 0xec]
jmp 0x49cc93
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf4]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xf8]
mov dword [esp + 8], edx
call fcn.0048d230
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0xc]
mov ebx, ecx
and ecx, 0x1f
cmp ecx, 0x15
ja 0x49d882
cmp ecx, 0x11
jne 0x49d858
mov dword [esp + 0x80], ebx
mov ecx, dword [esp + 0xec]
mov ebp, dword [ecx + 4]
mov esi, dword [ecx]
mov edi, dword [ecx + 8]
lea ebx, [ebp + 1]
cmp ebx, edi
jg 0x49d7ea
lea ebx, [ebp + 1]
mov dword [ecx + 4], ebx
mov byte [esi + ebp], 0x26
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x100]
inc eax
mov dword [esp + 0x14], eax
call fcn.0049c1e0
add esp, 0xe8
ret
mov dword [esp + 0xa8], eax
mov dword [esp + 0xa4], edx
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ebx
call fcn.00437c50
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0x7db370]
test edx, edx
jne 0x49d851
mov dword [edi], eax
mov edx, dword [esp + 0xa4]
mov ebp, ecx
mov esi, eax
mov eax, dword [esp + 0xa8]
mov ecx, edi
jmp 0x49d7a7
call fcn.0044b680
jmp 0x49d838
cmp ecx, 0x15
je 0x49d78a
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xf4]
mov esi, dword [esp + 0xf8]
mov edi, dword [esp + 0xec]
jmp 0x49cc93
cmp ecx, 0x17
je 0x49d78a
cmp ecx, 0x19
je 0x49d78a
jmp 0x49d861
cmp edx, 0x18
je 0x49de89
cmp edx, 0x19
jne 0x49de7b
movzx eax, byte [edi + 0x2c]
test al, al
jne 0x49dd65
mov eax, dword [edi + 4]
mov edx, dword [edi + 8]
mov ecx, dword [edi]
lea esi, [eax + 1]
cmp esi, edx
jg 0x49dd05
lea edx, [eax + 1]
mov dword [edi + 4], edx
mov byte [ecx + eax], 0x7b
lea eax, [esp + 8]
mov dword [esp + 0xa0], eax
xor ecx, ecx
jmp 0x49d965
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf4]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xf8]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x60]
mov dword [esp + 0xc], ebx
call fcn.004991d0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xec]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x100]
lea edx, [ecx + 1]
mov dword [esp + 0x14], edx
call fcn.0049c1e0
mov eax, dword [esp + 0x60]
lea ecx, [eax + 1]
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xf4]
mov dword [esp + 0x60], ecx
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov eax, dword [esp + 0xf8]
mov dword [esp + 8], eax
call fcn.0048df80
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x60]
cmp ecx, eax
jge 0x49dc92
test ecx, ecx
jle 0x49dc84
mov edi, dword [esp + 0xec]
movzx edx, byte [edi + 0x2c]
test dl, dl
je 0x49dc13
mov edx, dword [edi + 4]
lea ebx, [edx + 2]
mov ebp, dword [edi + 8]
mov esi, dword [edi]
cmp ebx, ebp
ja 0x49dbcd
cmp ebx, ebp
ja 0x49e47c
mov eax, ecx
movzx ecx, word [0x61c1de]
mov word [esi + edx], cx
mov dword [edi + 4], ebx
mov dword [edi + 8], ebp
mov ecx, dword [0x7db370]
test ecx, ecx
jne 0x49dbbd
mov dword [edi], esi
movzx ecx, byte [edi + 0x2b]
test cl, cl
je 0x49dbac
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf4]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xf8]
mov dword [esp + 8], edx
call fcn.0048e8c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x2c]
mov edx, dword [esp + 0x60]
mov dword [esp + 4], edx
mov dword [esp], ecx
call eax
lea edi, [esp + 0xb4]
mov esi, dword [esp + 0xa0]
call fcn.0044bc0e
mov eax, dword [esp + 0xb8]
mov ecx, dword [esp + 0xb4]
test eax, eax
je 0x49dba0
mov dword [esp + 0x40], eax
mov edx, dword [esp + 0xec]
mov ebx, dword [edx + 4]
mov dword [esp + 0x7c], ebx
lea ebp, [eax + ebx]
mov dword [esp + 0x78], ebp
mov esi, dword [edx]
mov edi, dword [edx + 8]
cmp ebp, edi
ja 0x49db54
cmp ebp, edi
ja 0x49e475
mov dword [esp + 0xb0], esi
mov dword [esp + 0x74], edi
lea edx, [esi + ebx]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0044be80
mov eax, dword [esp + 0x78]
mov edi, dword [esp + 0xec]
mov dword [edi + 4], eax
mov ecx, dword [esp + 0x74]
mov dword [edi + 8], ecx
mov edx, dword [0x7db370]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x40]
lea ebx, [ebp + ebx + 1]
test edx, edx
jne 0x49db3b
mov edx, dword [esp + 0xb0]
mov dword [edi], edx
cmp ebx, ecx
jg 0x49daee
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [edx + eax], 0x3a
jmp 0x49d8e3
lea ebp, [0x5dfee0]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
call fcn.00437c50
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0x7db370]
test edx, edx
jne 0x49db34
mov dword [edi], eax
mov edx, eax
mov eax, ecx
jmp 0x49dadf
call fcn.0044b680
jmp 0x49db2e
mov edx, eax
mov eax, dword [esp + 0xb0]
call fcn.0044b680
mov eax, edx
mov edx, dword [esp + 0xb0]
jmp 0x49dadb
mov dword [esp + 0x94], ecx
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ebp
call fcn.00437c50
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0xec]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x78]
jmp 0x49da81
mov edi, dword [esp + 0xec]
jmp 0x49d8e3
movzx ecx, byte [edi + 0x2c]
test cl, cl
jne 0x49d9f5
jmp 0x49d8e3
mov ecx, eax
mov eax, esi
call fcn.0044b680
mov eax, ecx
jmp 0x49d9e9
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], ebx
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00437c50
mov esi, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x7c]
mov ebx, dword [esp + 0x78]
mov edi, dword [esp + 0xec]
jmp 0x49d9be
mov eax, dword [edi + 4]
lea edx, [eax + 1]
mov ebx, dword [edi]
mov ebp, dword [edi + 8]
cmp edx, ebp
jg 0x49dc33
lea edx, [eax + 1]
mov dword [edi + 4], edx
mov byte [ebx + eax], 0x20
mov eax, ecx
jmp 0x49d9e9
lea ecx, [0x5dfee0]
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edx
call fcn.00437c50
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0x7db370]
test edx, edx
jne 0x49dc7d
mov dword [edi], eax
mov ebx, eax
mov eax, ecx
mov ecx, dword [esp + 0x60]
jmp 0x49dc22
call fcn.0044b680
jmp 0x49dc73
mov eax, ecx
mov edi, dword [esp + 0xec]
jmp 0x49d9e9
mov eax, dword [esp + 0xec]
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax + 8]
mov ebp, dword [eax]
cmp edx, ebx
jg 0x49dcb8
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebp + ecx], 0x7d
jmp 0x49c745
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.00437c50
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0x7db370]
test edx, edx
jne 0x49dcfe
mov dword [edi], eax
mov ebp, eax
mov eax, edi
jmp 0x49dca8
call fcn.0044b680
jmp 0x49dcf8
lea ebx, [0x5dfee0]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], esi
call fcn.00437c50
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xec]
mov dword [edi + 8], edx
mov edx, dword [0x7db370]
test edx, edx
jne 0x49dd5e
mov dword [edi], eax
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xf4]
mov edx, eax
mov eax, ecx
mov ecx, edx
jmp 0x49d8c7
call fcn.0044b680
jmp 0x49dd45
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0048e8c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x80]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0xec]
mov ebx, dword [edx + 4]
lea ebp, [eax + ebx]
mov dword [esp + 0x7c], ebp
mov esi, dword [edx]
mov edi, dword [edx + 8]
cmp ebp, edi
ja 0x49de27
cmp ebp, edi
ja 0x49e483
mov dword [esp + 0xb0], esi
mov dword [esp + 0x78], edi
lea edx, [esi + ebx]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0044be80
mov eax, dword [esp + 0x7c]
mov edi, dword [esp + 0xec]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x78]
mov dword [edi + 8], eax
mov eax, dword [0x7db370]
test eax, eax
jne 0x49de19
mov eax, dword [esp + 0xb0]
mov dword [edi], eax
mov ecx, dword [esp + 0x100]
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xf4]
mov esi, dword [esp + 0xf8]
jmp 0x49d8b4
mov eax, dword [esp + 0xb0]
call fcn.0044b680
jmp 0x49ddf8
mov dword [esp + 0x78], ebx
mov dword [esp + 0x44], eax
mov dword [esp + 0x98], ecx
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ebp
call fcn.00437c50
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x98]
mov edx, dword [esp + 0xec]
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x7c]
jmp 0x49ddaa
cmp edx, 0x1a
je 0x49cc93
jmp 0x49ccb7
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0048e7d0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xec]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov eax, dword [esp + 0xfc]
mov dword [esp + 0xc], eax
call fcn.0049a2c0
jmp 0x49c745
cmp edx, 0xc
ja 0x49e219
cmp edx, 1
ja 0x49e098
test esi, 0x1f
jne 0x49e060
test ecx, ecx
jne 0x49dfac
mov eax, dword [edi + 4]
lea ecx, [eax + 0x17]
mov dword [esp + 0x7c], ecx
mov edx, dword [edi + 8]
mov ebx, dword [edi]
cmp ecx, edx
ja 0x49df6e
cmp ecx, edx
ja 0x49e4ad
mov dword [esp + 0x78], edx
mov dword [esp + 0xb0], ebx
add eax, ebx
mov dword [esp], eax
lea eax, [0x621de9]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x17
call fcn.0044be80
mov eax, dword [esp + 0x7c]
mov edi, dword [esp + 0xec]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x78]
mov dword [edi + 8], eax
mov eax, dword [0x7db370]
test eax, eax
jne 0x49df5d
mov eax, dword [esp + 0xb0]
mov dword [edi], eax
jmp 0x49c745
mov eax, dword [esp + 0xb0]
call fcn.0044b680
jmp 0x49c745
mov dword [esp + 0x78], eax
lea ebp, [0x5dfee0]
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
call fcn.00437c50
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x7c]
mov edi, dword [esp + 0xec]
jmp 0x49df01
mov ecx, dword [esp + 0xfc]
cmp ecx, 0x76
jne 0x49e04f
mov ecx, dword [edi + 4]
lea edx, [ecx + 5]
mov ebx, dword [edi + 8]
mov ebp, dword [edi]
cmp edx, ebx
ja 0x49e00d
cmp edx, ebx
ja 0x49e4a6
mov esi, dword [0x61c735]
mov eax, ebx
movzx ebx, byte [0x61c739]
mov dword [ebp + ecx], esi
mov byte [ebp + ecx + 4], bl
mov dword [edi + 4], edx
mov dword [edi + 8], eax
mov ecx, dword [0x7db370]
test ecx, ecx
jne 0x49e001
mov dword [edi], ebp
jmp 0x49c745
mov eax, ebp
call fcn.0044b680
jmp 0x49c745
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], ecx
lea eax, [0x5dfee0]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.00437c50
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x14]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x7c]
mov edi, dword [esp + 0xec]
jmp 0x49dfcb
mov dword [esp], edi
mov dword [esp + 4], ecx
call fcn.00499600
jmp 0x49c745
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0048cb20
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0xec]
mov dword [esp], ecx
mov byte [esp + 4], al
mov eax, dword [esp + 0xfc]
mov dword [esp + 8], eax
call fcn.00499b80
jmp 0x49c745
lea eax, [edx - 2]
cmp eax, 4
ja 0x49e152
cmp edx, 3
ja 0x49e0e6
cmp edx, 2
jne 0x49e0db
mov eax, dword [ebp]
mov ecx, eax
sar eax, 0x1f
mov dword [esp], edi
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov byte [esp + 0xc], 1
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
call fcn.00499c60
jmp 0x49c745
movsx eax, byte [ebp]
mov ecx, eax
sar eax, 0x1f
jmp 0x49e0b6
cmp edx, 4
jne 0x49e0f6
movsx eax, word [ebp]
mov ecx, eax
sar eax, 0x1f
jmp 0x49e0b6
cmp edx, 5
jne 0x49e105
mov eax, dword [ebp]
mov ecx, eax
sar eax, 0x1f
jmp 0x49e0b6
cmp edx, 6
jne 0x49e112
mov ecx, dword [ebp]
mov eax, dword [ebp + 4]
jmp 0x49e0b6
lea eax, [0x5f0e00]
mov dword [esp], eax
call fcn.00409a30
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x11
mov eax, dword [0x7db370]
test eax, eax
jne 0x49e142
lea eax, [0x61fad6]
mov dword [edi], eax
jmp 0x49e426
lea eax, [0x61fad6]
call fcn.0044b680
jmp 0x49e426
lea eax, [edx - 7]
cmp eax, 5
ja 0x49ccb7
cmp edx, 9
ja 0x49e1f0
cmp edx, 7
jne 0x49e196
mov eax, dword [ebp]
xor ecx, ecx
mov dword [esp], edi
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov byte [esp + 0xc], 0
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
call fcn.00499c60
jmp 0x49c745
cmp edx, 8
jne 0x49e1a3
movzx eax, byte [ebp]
xor ecx, ecx
jmp 0x49e171
cmp edx, 9
jne 0x49e1b0
movzx eax, word [ebp]
xor ecx, ecx
jmp 0x49e171
lea eax, [0x5f0e00]
mov dword [esp], eax
call fcn.00409a30
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x12
mov eax, dword [0x7db370]
test eax, eax
jne 0x49e1e0
lea eax, [0x6200ef]
mov dword [edi], eax
jmp 0x49e408
lea eax, [0x6200ef]
call fcn.0044b680
jmp 0x49e408
cmp edx, 0xa
jne 0x49e1ff
mov eax, dword [ebp]
xor ecx, ecx
jmp 0x49e171
cmp edx, 0xb
jne 0x49e20f
mov ecx, dword [ebp + 4]
mov eax, dword [ebp]
jmp 0x49e171
mov eax, dword [ebp]
xor ecx, ecx
jmp 0x49e171
cmp edx, 0xe
ja 0x49e27d
cmp edx, 0xd
jne 0x49e252
movss xmm0, dword [ebp]
mov dword [esp], edi
cvtss2sd xmm0, xmm0
movsd qword [esp + 4], xmm0
mov dword [esp + 0xc], 0x20
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
call fcn.00499f80
jmp 0x49c745
movsd xmm0, qword [ebp]
mov dword [esp], edi
movsd qword [esp + 4], xmm0
mov dword [esp + 0xc], 0x40
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
call fcn.00499f80
jmp 0x49c745
cmp edx, 0xf
jne 0x49e2c0
movss xmm0, dword [ebp]
movss xmm1, dword [ebp + 4]
mov dword [esp], edi
cvtss2sd xmm0, xmm0
movsd qword [esp + 4], xmm0
cvtss2sd xmm0, xmm1
movsd qword [esp + 0xc], xmm0
mov dword [esp + 0x14], 0x40
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x18], eax
call fcn.0049a0e0
jmp 0x49c745
movsd xmm0, qword [ebp]
movsd xmm1, qword [ebp + 8]
mov dword [esp], edi
movsd qword [esp + 4], xmm0
movsd qword [esp + 0xc], xmm1
mov dword [esp + 0x14], pe_nt_image_headers32
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x18], eax
call fcn.0049a0e0
jmp 0x49c745
lea esi, [edi + 0x14]
mov eax, edi
mov edi, esi
mov ebx, eax
mov eax, dword [esp + 0xf0]
call fcn.0044b680
lea edi, [ebx + 0x18]
mov ebp, eax
mov eax, dword [esp + 0xf4]
call fcn.0044b680
mov ebx, ebp
mov ebp, eax
mov edi, dword [esp + 0xec]
jmp 0x49c26e
lea ebx, [edi + 0x10]
mov eax, edi
mov edi, ebx
mov ebp, eax
xor eax, eax
call fcn.0044b680
mov edi, ebp
jmp 0x49c249
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf4]
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.0048d690
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0xec]
mov dword [edx + 0xc], ecx
mov ecx, dword [0x7db370]
test ecx, ecx
jne 0x49e3b6
mov dword [edx + 0x10], eax
mov dword [esp], edx
mov eax, dword [esp + 0xfc]
mov dword [esp + 4], eax
call fcn.0049b530
movzx eax, byte [esp + 8]
test al, al
jne 0x49e3af
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0xf8]
jmp 0x49c226
add esp, 0xe8
ret
lea edi, [edx + 0x10]
call fcn.0044b680
jmp 0x49e380
mov edx, dword [esp + 0xf8]
jmp 0x49c226
mov eax, dword [esp + 0x80]
mov dword [edi + 8], eax
lea eax, [0x5e62c0]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.00426780
ud2
mov eax, dword [esp + 0x80]
mov dword [edi + 8], eax
lea eax, [0x5e62c0]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.00426780
ud2
mov eax, dword [esp + 0x80]
mov dword [edi + 8], eax
lea eax, [0x5e62c0]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.00426780
ud2
mov eax, dword [esp + 0x80]
mov dword [edi + 8], eax
lea eax, [0x5e62c0]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.00426780
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.004258a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.004259a0
ud2
call fcn.00449f20
jmp fcn.0049c1e0