Function at 0x49b630
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 0x49d904
sub esp, 0xe8
mov ecx, dword [esp + 0x100]
test ecx, ecx
jle 0x49d810
mov edx, dword [esp + 0xf8]
test edx, edx
je 0x49b676
test edx, 0x60
je 0x49d793
mov edi, dword [esp + 0xec]
mov dword [edi + 0xc], 0
mov ebx, dword [0x7d95f0]
test ebx, ebx
jne 0x49d77c
mov dword [edi + 0x10], 0
mov dword [edi + 0x1c], edx
mov ebx, dword [0x7d95f0]
test ebx, ebx
jne 0x49d746
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 0x49d318
cmp edx, 0x15
ja 0x49cb3f
cmp edx, 0x13
ja 0x49c120
cmp edx, 0x11
jne 0x49c0db
mov eax, dword [esp + 0xfc]
cmp eax, 0x71
jg 0x49c0c4
cmp eax, 0x58
jne 0x49c0b6
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0048ddb0
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 0x49ba17
mov eax, dword [esp + 0x80]
cmp eax, 0x17
je 0x49b9e1
mov eax, dword [esp + 0xf8]
test eax, 0x100
jne 0x49b961
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.0048cd90
mov eax, dword [esp + 0xc]
lea ecx, [0x5e1800]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.00437ba0
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 0x49b7de
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 0x49b8f0
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.0048c9b0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
and ecx, 0x1f
mov dword [esp + 0x80], ecx
cmp ecx, 9
ja 0x49b8ae
cmp ecx, 7
jne 0x49b846
mov eax, dword [eax]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jb 0x49b7c8
jmp 0x49d8a9
cmp ecx, 8
jne 0x49b85a
movzx eax, byte [eax]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jmp 0x49b83f
cmp ecx, 9
jne 0x49b86e
movzx eax, word [eax]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jmp 0x49b83f
lea eax, [0x5f2020]
mov dword [esp], eax
call fcn.00409a10
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x12
mov eax, dword [0x7d95f0]
test eax, eax
jne 0x49b89e
lea eax, [0x620f0f]
mov dword [edi], eax
jmp 0x49d81c
lea eax, [0x620f0f]
call fcn.0044b6a0
jmp 0x49d81c
cmp ecx, 0xa
jne 0x49b8c4
mov eax, dword [eax]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jmp 0x49b83f
cmp ecx, 0xb
jne 0x49b8da
mov eax, dword [eax]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jmp 0x49b83f
cmp ecx, 0xc
jne 0x49b86e
mov eax, dword [eax]
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jmp 0x49b83f
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.00499880
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.0048cd90
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.0048da60
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.0048c050
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
jmp 0x49b8f0
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.0048c050
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
jmp 0x49b8f0
mov eax, dword [esp + 0xec]
movzx ecx, byte [eax + 0x2c]
test cl, cl
jne 0x49bc3b
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
mov ebx, dword [eax]
lea ebp, [edx + 1]
cmp ebp, ecx
jg 0x49bbe9
lea ecx, [edx + 1]
mov dword [eax + 4], ecx
mov byte [ebx + edx], 0x5b
xor ecx, ecx
jmp 0x49babb
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.0048c9b0
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.0049b630
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.0048cd90
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x58]
cmp ecx, eax
jge 0x49bb74
test ecx, ecx
jle 0x49ba4b
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 0x49bb21
lea ebx, [edx + 1]
mov dword [eax + 4], ebx
mov byte [esi + edx], 0x20
jmp 0x49ba4b
lea eax, [0x5e1800]
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.00437c70
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 [0x7d95f0]
test edx, edx
jne 0x49bb6d
mov dword [edi], eax
mov edx, ecx
mov esi, eax
mov eax, edi
mov ecx, dword [esp + 0x58]
jmp 0x49bb12
call fcn.0044b6a0
jmp 0x49bb61
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 0x49bb9c
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebp + ecx], 0x5d
add esp, 0xe8
ret
lea eax, [0x5e1800]
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.00437c70
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 [0x7d95f0]
test edx, edx
jne 0x49bbe2
mov dword [edi], eax
mov ebp, eax
mov eax, edi
jmp 0x49bb8a
call fcn.0044b6a0
jmp 0x49bbdc
lea eax, [0x5e1800]
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.00437c70
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 [0x7d95f0]
test edx, edx
jne 0x49bc34
mov dword [edi], eax
mov edx, ecx
mov ebx, eax
mov eax, edi
jmp 0x49ba3d
call fcn.0044b6a0
jmp 0x49bc29
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.0048ddb0
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 0x49c06a
cmp ebp, esi
ja 0x49d8a2
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.0044bea0
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 [0x7d95f0]
test edx, edx
jne 0x49c04e
mov edx, dword [esp + 0xb0]
mov dword [edi], edx
mov ebx, dword [esp + 0x80]
cmp ebx, 0x17
jne 0x49c042
add ebx, 0xffffffeb
cmp ebx, 1
ja 0x49c020
mov ebx, dword [esp + 0xf8]
test ebx, 0x200
je 0x49bf59
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0x50]
lea ebp, [esi + ebp + 1]
cmp ebp, ecx
jg 0x49bf02
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [edx + eax], 0x7b
xor eax, eax
jmp 0x49bdb9
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.0048c9b0
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.0049b630
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.0048cd90
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x5c]
cmp ecx, eax
jge 0x49be8f
test ecx, ecx
jle 0x49be88
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 0x49be45
cmp ebx, ebp
ja 0x49d894
mov eax, ecx
movzx ecx, word [0x61cfaa]
mov word [esi + edx], cx
mov dword [edi + 4], ebx
mov dword [edi + 8], ebp
mov ecx, dword [0x7d95f0]
test ecx, ecx
jne 0x49be35
mov dword [edi], esi
jmp 0x49bd44
mov ecx, eax
mov eax, esi
call fcn.0044b6a0
mov eax, ecx
jmp 0x49bd44
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x78], edx
lea eax, [0x5e1800]
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.00437c70
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 0x49be09
mov eax, ecx
jmp 0x49bd44
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 0x49beb5
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebp + ecx], 0x7d
jmp 0x49bb95
lea eax, [0x5e1800]
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.00437c70
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 [0x7d95f0]
test edx, edx
jne 0x49befb
mov dword [edi], eax
mov ebp, eax
mov eax, edi
jmp 0x49bea5
call fcn.0044b6a0
jmp 0x49bef5
lea ebx, [0x5e1800]
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.00437c70
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 [0x7d95f0]
test edx, edx
jne 0x49bf52
mov dword [edi], eax
mov ebx, dword [esp + 0xf8]
mov edx, eax
mov eax, ecx
jmp 0x49bd36
call fcn.0044b6a0
jmp 0x49bf42
test ebx, 0x80
je 0x49c012
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 0x49bd22
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x50]
lea ebx, [ebp + ebx + 5]
cmp ebx, ecx
ja 0x49bfd7
cmp ebx, ecx
ja 0x49d89b
mov ebp, dword [0x61d501]
movzx esi, byte [0x61d505]
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 [0x7d95f0]
test ecx, ecx
jne 0x49bfce
mov dword [edi], edx
add esp, 0xe8
ret
mov eax, edx
call fcn.0044b6a0
jmp 0x49bfc7
mov dword [esp + 0x7c], ebx
lea ebp, [0x5e1800]
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.00437c70
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 0x49bf95
mov ebp, dword [esp + 0xf4]
mov esi, ebp
jmp 0x49bf6f
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 0x49bf7b
mov ebx, dword [esp + 0xf8]
jmp 0x49bd22
mov edx, eax
mov eax, dword [esp + 0xb0]
call fcn.0044b6a0
mov eax, edx
mov edx, dword [esp + 0xb0]
jmp 0x49bcf3
mov dword [esp + 0x88], ecx
lea eax, [0x5e1800]
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.00437c70
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 0x49bca1
cmp eax, 0x71
je 0x49b707
jmp 0x49ba17
cmp eax, 0x73
je 0x49b707
cmp eax, 0x78
je 0x49b707
jmp 0x49ba17
lea eax, [edx - 0x12]
cmp eax, 1
ja 0x49c107
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.0049a070
jmp 0x49bb95
mov dword [esp], edi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], esi
call fcn.004987b0
jmp 0x49bb95
cmp edx, 0x14
je 0x49c890
movzx edx, byte [edi + 0x2c]
test dl, dl
jne 0x49c5e9
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 0x49c599
cmp ecx, ebp
ja 0x49d8e1
mov ebx, dword [0x61d435]
mov dword [esi + edx], ebx
mov dword [edi + 4], ecx
mov dword [edi + 8], ebp
mov ecx, dword [0x7d95f0]
test ecx, ecx
jne 0x49c589
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.0048d100
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
test eax, eax
jle 0x49c369
mov dword [esp + 0x54], eax
mov edx, dword [esp + 0xec]
mov ebx, dword [esp + 0x100]
mov ebp, dword [esp + 0xfc]
xor esi, esi
jmp 0x49c1f5
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 0x49c275
movzx esi, byte [edx + 0x2c]
xchg esi, eax
test al, al
xchg esi, eax
je 0x49c505
mov esi, dword [edx + 4]
lea ebx, [esi + 2]
mov ebp, dword [edx + 8]
mov ecx, dword [edx]
cmp ebx, ebp
ja 0x49c4b8
cmp ebx, ebp
ja 0x49d8da
mov dword [esp + 0x7c], ebp
movzx ebp, word [0x61cfaa]
mov word [ecx + esi], bp
mov dword [edx + 4], ebx
mov ebx, dword [esp + 0x7c]
mov dword [edx + 8], ebx
mov ebx, dword [0x7d95f0]
test ebx, ebx
jne 0x49c4a2
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.0049b630
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 0x49c450
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.0048cf30
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.0049b630
mov eax, dword [esp + 0x64]
inc eax
mov ecx, dword [esp + 0x54]
cmp eax, ecx
jl 0x49c1c3
mov eax, dword [esp + 0xec]
movzx ecx, byte [eax + 0x2c]
test cl, cl
je 0x49c3e3
mov ecx, dword [eax + 4]
mov edx, dword [eax + 8]
mov ebx, dword [eax]
lea ebp, [ecx + 1]
cmp ebp, edx
jg 0x49c396
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebx + ecx], 0x7d
jmp 0x49bb95
lea eax, [0x5e1800]
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.00437c70
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 [0x7d95f0]
test edx, edx
jne 0x49c3dc
mov dword [edi], eax
mov ebx, eax
mov eax, edi
jmp 0x49c387
call fcn.0044b6a0
jmp 0x49c3d6
mov ecx, dword [eax + 8]
mov edx, dword [eax + 4]
mov ebx, dword [eax]
lea ebp, [edx + 1]
cmp ebp, ecx
jg 0x49c401
lea ecx, [edx + 1]
mov dword [eax + 4], ecx
mov byte [ebx + edx], 0x5d
jmp 0x49bb95
lea eax, [0x5e1800]
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.00437c70
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 [0x7d95f0]
test edx, edx
jne 0x49c449
mov dword [edi], eax
mov edx, ecx
mov ebx, eax
mov eax, edi
jmp 0x49c3f2
call fcn.0044b6a0
jmp 0x49c441
lea eax, [0x5e1800]
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.00437c70
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 [0x7d95f0]
test edx, edx
jne 0x49c49b
mov dword [edi], eax
mov edx, ecx
mov ebx, eax
mov eax, edi
jmp 0x49c2ce
call fcn.0044b6a0
jmp 0x49c490
mov ebx, edi
mov edi, edx
mov ebp, eax
mov eax, ecx
call fcn.0044b6a0
mov eax, ebp
mov edi, ebx
jmp 0x49c275
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x78], esi
lea eax, [0x5e1800]
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.00437c70
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 0x49c244
mov esi, dword [edx + 4]
mov eax, dword [edx]
mov edi, dword [edx + 8]
lea ebx, [esi + 1]
cmp ebx, edi
jg 0x49c52e
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 0x49c275
lea ecx, [0x5e1800]
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.00437c70
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 [0x7d95f0]
test edx, edx
jne 0x49c582
mov dword [edi], eax
mov edx, edi
mov ebp, dword [esp + 0xa8]
mov esi, ecx
mov ecx, dword [esp + 0xa4]
jmp 0x49c514
call fcn.0044b6a0
jmp 0x49c56e
mov ecx, eax
mov eax, esi
call fcn.0044b6a0
mov eax, ecx
jmp 0x49c171
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x78], edx
lea eax, [0x5e1800]
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.00437c70
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 0x49c14a
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0048ddb0
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 0x49c844
cmp ebp, esi
ja 0x49d8ef
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.0044bea0
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 [0x7d95f0]
test edx, edx
jne 0x49c828
mov edx, dword [esp + 0xb0]
mov dword [edi], edx
mov ebx, dword [esp + 0x80]
lea ebp, [ebx - 0x15]
cmp ebp, 1
ja 0x49c7e8
mov ebx, dword [esp + 0xf8]
test ebx, 0x200
je 0x49c721
mov ebp, dword [esp + 0x7c]
mov esi, dword [esp + 0x4c]
lea ebp, [esi + ebp + 1]
cmp ebp, ecx
jg 0x49c6cd
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [edx + eax], 0x7b
jmp 0x49c171
lea ebx, [0x5e1800]
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.00437c70
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 [0x7d95f0]
test edx, edx
jne 0x49c71a
mov dword [edi], eax
mov ebx, dword [esp + 0xf8]
mov edx, eax
mov eax, ecx
jmp 0x49c6be
call fcn.0044b6a0
jmp 0x49c70d
test ebx, 0x80
je 0x49c7da
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 0x49c6ae
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x4c]
lea ebx, [ebp + ebx + 5]
cmp ebx, ecx
ja 0x49c79f
cmp ebx, ecx
ja 0x49d8e8
mov ebp, dword [0x61d501]
movzx esi, byte [0x61d505]
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 [0x7d95f0]
test ecx, ecx
jne 0x49c796
mov dword [edi], edx
add esp, 0xe8
ret
mov eax, edx
call fcn.0044b6a0
jmp 0x49c78f
mov dword [esp + 0x7c], ebx
lea ebp, [0x5e1800]
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.00437c70
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 0x49c75d
mov ebp, dword [esp + 0xf4]
mov esi, ebp
jmp 0x49c737
lea eax, [0x5f2020]
mov dword [esp], eax
call fcn.00409a10
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x13
mov eax, dword [0x7d95f0]
test eax, eax
jne 0x49c818
lea eax, [0x6216bb]
mov dword [edi], eax
jmp 0x49d83a
lea eax, [0x6216bb]
call fcn.0044b6a0
jmp 0x49d83a
mov edx, eax
mov eax, dword [esp + 0xb0]
call fcn.0044b6a0
mov eax, edx
mov edx, dword [esp + 0xb0]
jmp 0x49c68c
mov dword [esp + 0x90], eax
lea eax, [0x5e1800]
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.00437c70
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 0x49c63a
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0048c720
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0xc]
test ecx, ecx
jne 0x49cb08
mov edi, dword [esp + 0xec]
movzx ecx, byte [edi + 0x2c]
test cl, cl
jne 0x49c95a
mov ecx, dword [edi + 4]
lea edx, [ecx + 5]
mov ebx, dword [edi + 8]
mov ebp, dword [edi]
cmp edx, ebx
ja 0x49c918
cmp edx, ebx
ja 0x49d8b0
mov esi, dword [0x61d55b]
mov eax, ebx
movzx ebx, byte [0x61d55f]
mov dword [ebp + ecx], esi
mov byte [ebp + ecx + 4], bl
mov dword [edi + 4], edx
mov dword [edi + 8], eax
mov ecx, dword [0x7d95f0]
test ecx, ecx
jne 0x49c90c
mov dword [edi], ebp
jmp 0x49bb95
mov eax, ebp
call fcn.0044b6a0
jmp 0x49bb95
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], ecx
lea eax, [0x5e1800]
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.00437c70
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 0x49c8d6
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.0048ddb0
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 0x49cabc
cmp ebp, esi
ja 0x49d8be
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.0044bea0
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 [0x7d95f0]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x48]
lea ebx, [ebp + ebx + 5]
test edx, edx
jne 0x49caa0
mov edx, dword [esp + 0xb0]
mov dword [edi], edx
cmp ebx, ecx
ja 0x49ca65
cmp ebx, ecx
ja 0x49d8b7
mov ebp, dword [0x61d501]
movzx esi, byte [0x61d505]
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 [0x7d95f0]
test ecx, ecx
jne 0x49ca59
mov dword [edi], edx
jmp 0x49bb95
mov eax, edx
call fcn.0044b6a0
jmp 0x49bb95
mov dword [esp + 0x7c], ebx
lea ebp, [0x5e1800]
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.00437c70
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 0x49ca22
mov edx, eax
mov eax, dword [esp + 0xb0]
call fcn.0044b6a0
mov eax, edx
mov edx, dword [esp + 0xb0]
jmp 0x49ca1e
mov dword [esp + 0x8c], ecx
lea eax, [0x5e1800]
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.00437c70
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 0x49c9c0
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.0049b630
jmp 0x49bb95
cmp edx, 0x17
ja 0x49cce6
cmp edx, 0x16
jne 0x49b6ee
test ecx, ecx
jne 0x49c0e3
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0048d4b0
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x49cb92
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xf4]
mov esi, dword [esp + 0xf8]
mov edi, dword [esp + 0xec]
jmp 0x49c0e3
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.0048c720
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 0x49ccd2
cmp ecx, 0x11
jne 0x49cca8
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 0x49cc3a
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.0049b630
add esp, 0xe8
ret
mov dword [esp + 0xa8], eax
mov dword [esp + 0xa4], edx
lea eax, [0x5e1800]
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.00437c70
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 [0x7d95f0]
test edx, edx
jne 0x49cca1
mov dword [edi], eax
mov edx, dword [esp + 0xa4]
mov ebp, ecx
mov esi, eax
mov eax, dword [esp + 0xa8]
mov ecx, edi
jmp 0x49cbf7
call fcn.0044b6a0
jmp 0x49cc88
cmp ecx, 0x15
je 0x49cbda
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xf4]
mov esi, dword [esp + 0xf8]
mov edi, dword [esp + 0xec]
jmp 0x49c0e3
cmp ecx, 0x17
je 0x49cbda
cmp ecx, 0x19
je 0x49cbda
jmp 0x49ccb1
cmp edx, 0x18
je 0x49d2d9
cmp edx, 0x19
jne 0x49d2cb
movzx eax, byte [edi + 0x2c]
test al, al
jne 0x49d1b5
mov eax, dword [edi + 4]
mov edx, dword [edi + 8]
mov ecx, dword [edi]
lea esi, [eax + 1]
cmp esi, edx
jg 0x49d155
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 0x49cdb5
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.00498620
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.0049b630
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.0048d470
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x60]
cmp ecx, eax
jge 0x49d0e2
test ecx, ecx
jle 0x49d0d4
mov edi, dword [esp + 0xec]
movzx edx, byte [edi + 0x2c]
test dl, dl
je 0x49d063
mov edx, dword [edi + 4]
lea ebx, [edx + 2]
mov ebp, dword [edi + 8]
mov esi, dword [edi]
cmp ebx, ebp
ja 0x49d01d
cmp ebx, ebp
ja 0x49d8cc
mov eax, ecx
movzx ecx, word [0x61cfaa]
mov word [esi + edx], cx
mov dword [edi + 4], ebx
mov dword [edi + 8], ebp
mov ecx, dword [0x7d95f0]
test ecx, ecx
jne 0x49d00d
mov dword [edi], esi
movzx ecx, byte [edi + 0x2b]
test cl, cl
je 0x49cffc
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.0048ddb0
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.0044bc2e
mov eax, dword [esp + 0xb8]
mov ecx, dword [esp + 0xb4]
test eax, eax
je 0x49cff0
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 0x49cfa4
cmp ebp, edi
ja 0x49d8c5
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.0044bea0
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 [0x7d95f0]
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x40]
lea ebx, [ebp + ebx + 1]
test edx, edx
jne 0x49cf8b
mov edx, dword [esp + 0xb0]
mov dword [edi], edx
cmp ebx, ecx
jg 0x49cf3e
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [edx + eax], 0x3a
jmp 0x49cd33
lea ebp, [0x5e1800]
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.00437c70
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 [0x7d95f0]
test edx, edx
jne 0x49cf84
mov dword [edi], eax
mov edx, eax
mov eax, ecx
jmp 0x49cf2f
call fcn.0044b6a0
jmp 0x49cf7e
mov edx, eax
mov eax, dword [esp + 0xb0]
call fcn.0044b6a0
mov eax, edx
mov edx, dword [esp + 0xb0]
jmp 0x49cf2b
mov dword [esp + 0x94], ecx
lea eax, [0x5e1800]
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.00437c70
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 0x49ced1
mov edi, dword [esp + 0xec]
jmp 0x49cd33
movzx ecx, byte [edi + 0x2c]
test cl, cl
jne 0x49ce45
jmp 0x49cd33
mov ecx, eax
mov eax, esi
call fcn.0044b6a0
mov eax, ecx
jmp 0x49ce39
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], ebx
lea eax, [0x5e1800]
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.00437c70
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 0x49ce0e
mov eax, dword [edi + 4]
lea edx, [eax + 1]
mov ebx, dword [edi]
mov ebp, dword [edi + 8]
cmp edx, ebp
jg 0x49d083
lea edx, [eax + 1]
mov dword [edi + 4], edx
mov byte [ebx + eax], 0x20
mov eax, ecx
jmp 0x49ce39
lea ecx, [0x5e1800]
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.00437c70
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 [0x7d95f0]
test edx, edx
jne 0x49d0cd
mov dword [edi], eax
mov ebx, eax
mov eax, ecx
mov ecx, dword [esp + 0x60]
jmp 0x49d072
call fcn.0044b6a0
jmp 0x49d0c3
mov eax, ecx
mov edi, dword [esp + 0xec]
jmp 0x49ce39
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 0x49d108
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebp + ecx], 0x7d
jmp 0x49bb95
lea eax, [0x5e1800]
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.00437c70
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 [0x7d95f0]
test edx, edx
jne 0x49d14e
mov dword [edi], eax
mov ebp, eax
mov eax, edi
jmp 0x49d0f8
call fcn.0044b6a0
jmp 0x49d148
lea ebx, [0x5e1800]
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.00437c70
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 [0x7d95f0]
test edx, edx
jne 0x49d1ae
mov dword [edi], eax
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xf4]
mov edx, eax
mov eax, ecx
mov ecx, edx
jmp 0x49cd17
call fcn.0044b6a0
jmp 0x49d195
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0048ddb0
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 0x49d277
cmp ebp, edi
ja 0x49d8d3
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.0044bea0
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 [0x7d95f0]
test eax, eax
jne 0x49d269
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 0x49cd04
mov eax, dword [esp + 0xb0]
call fcn.0044b6a0
jmp 0x49d248
mov dword [esp + 0x78], ebx
mov dword [esp + 0x44], eax
mov dword [esp + 0x98], ecx
lea eax, [0x5e1800]
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.00437c70
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 0x49d1fa
cmp edx, 0x1a
je 0x49c0e3
jmp 0x49c107
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0048dcc0
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.00499710
jmp 0x49bb95
cmp edx, 0xc
ja 0x49d669
cmp edx, 1
ja 0x49d4e8
test esi, 0x1f
jne 0x49d4b0
test ecx, ecx
jne 0x49d3fc
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 0x49d3be
cmp ecx, edx
ja 0x49d8fd
mov dword [esp + 0x78], edx
mov dword [esp + 0xb0], ebx
add eax, ebx
mov dword [esp], eax
lea eax, [0x622aaa]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x17
call fcn.0044bea0
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 [0x7d95f0]
test eax, eax
jne 0x49d3ad
mov eax, dword [esp + 0xb0]
mov dword [edi], eax
jmp 0x49bb95
mov eax, dword [esp + 0xb0]
call fcn.0044b6a0
jmp 0x49bb95
mov dword [esp + 0x78], eax
lea ebp, [0x5e1800]
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.00437c70
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 0x49d351
mov ecx, dword [esp + 0xfc]
cmp ecx, 0x76
jne 0x49d49f
mov ecx, dword [edi + 4]
lea edx, [ecx + 5]
mov ebx, dword [edi + 8]
mov ebp, dword [edi]
cmp edx, ebx
ja 0x49d45d
cmp edx, ebx
ja 0x49d8f6
mov esi, dword [0x61d55b]
mov eax, ebx
movzx ebx, byte [0x61d55f]
mov dword [ebp + ecx], esi
mov byte [ebp + ecx + 4], bl
mov dword [edi + 4], edx
mov dword [edi + 8], eax
mov ecx, dword [0x7d95f0]
test ecx, ecx
jne 0x49d451
mov dword [edi], ebp
jmp 0x49bb95
mov eax, ebp
call fcn.0044b6a0
jmp 0x49bb95
mov dword [esp + 0x7c], edx
mov dword [esp + 0x78], ecx
lea eax, [0x5e1800]
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.00437c70
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 0x49d41b
mov dword [esp], edi
mov dword [esp + 4], ecx
call fcn.00498a50
jmp 0x49bb95
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0048c010
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.00498fd0
jmp 0x49bb95
lea eax, [edx - 2]
cmp eax, 4
ja 0x49d5a2
cmp edx, 3
ja 0x49d536
cmp edx, 2
jne 0x49d52b
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.004990b0
jmp 0x49bb95
movsx eax, byte [ebp]
mov ecx, eax
sar eax, 0x1f
jmp 0x49d506
cmp edx, 4
jne 0x49d546
movsx eax, word [ebp]
mov ecx, eax
sar eax, 0x1f
jmp 0x49d506
cmp edx, 5
jne 0x49d555
mov eax, dword [ebp]
mov ecx, eax
sar eax, 0x1f
jmp 0x49d506
cmp edx, 6
jne 0x49d562
mov ecx, dword [ebp]
mov eax, dword [ebp + 4]
jmp 0x49d506
lea eax, [0x5f2020]
mov dword [esp], eax
call fcn.00409a10
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x11
mov eax, dword [0x7d95f0]
test eax, eax
jne 0x49d592
lea eax, [0x62093d]
mov dword [edi], eax
jmp 0x49d876
lea eax, [0x62093d]
call fcn.0044b6a0
jmp 0x49d876
lea eax, [edx - 7]
cmp eax, 5
ja 0x49c107
cmp edx, 9
ja 0x49d640
cmp edx, 7
jne 0x49d5e6
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.004990b0
jmp 0x49bb95
cmp edx, 8
jne 0x49d5f3
movzx eax, byte [ebp]
xor ecx, ecx
jmp 0x49d5c1
cmp edx, 9
jne 0x49d600
movzx eax, word [ebp]
xor ecx, ecx
jmp 0x49d5c1
lea eax, [0x5f2020]
mov dword [esp], eax
call fcn.00409a10
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x12
mov eax, dword [0x7d95f0]
test eax, eax
jne 0x49d630
lea eax, [0x620f0f]
mov dword [edi], eax
jmp 0x49d858
lea eax, [0x620f0f]
call fcn.0044b6a0
jmp 0x49d858
cmp edx, 0xa
jne 0x49d64f
mov eax, dword [ebp]
xor ecx, ecx
jmp 0x49d5c1
cmp edx, 0xb
jne 0x49d65f
mov ecx, dword [ebp + 4]
mov eax, dword [ebp]
jmp 0x49d5c1
mov eax, dword [ebp]
xor ecx, ecx
jmp 0x49d5c1
cmp edx, 0xe
ja 0x49d6cd
cmp edx, 0xd
jne 0x49d6a2
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.004993d0
jmp 0x49bb95
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.004993d0
jmp 0x49bb95
cmp edx, 0xf
jne 0x49d710
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.00499530
jmp 0x49bb95
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.00499530
jmp 0x49bb95
lea esi, [edi + 0x14]
mov eax, edi
mov edi, esi
mov ebx, eax
mov eax, dword [esp + 0xf0]
call fcn.0044b6a0
lea edi, [ebx + 0x18]
mov ebp, eax
mov eax, dword [esp + 0xf4]
call fcn.0044b6a0
mov ebx, ebp
mov ebp, eax
mov edi, dword [esp + 0xec]
jmp 0x49b6be
lea ebx, [edi + 0x10]
mov eax, edi
mov edi, ebx
mov ebp, eax
xor eax, eax
call fcn.0044b6a0
mov edi, ebp
jmp 0x49b699
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.0048cb80
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0xec]
mov dword [edx + 0xc], ecx
mov ecx, dword [0x7d95f0]
test ecx, ecx
jne 0x49d806
mov dword [edx + 0x10], eax
mov dword [esp], edx
mov eax, dword [esp + 0xfc]
mov dword [esp + 4], eax
call fcn.0049a980
movzx eax, byte [esp + 8]
test al, al
jne 0x49d7ff
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0xf8]
jmp 0x49b676
add esp, 0xe8
ret
lea edi, [edx + 0x10]
call fcn.0044b6a0
jmp 0x49d7d0
mov edx, dword [esp + 0xf8]
jmp 0x49b676
mov eax, dword [esp + 0x80]
mov dword [edi + 8], eax
lea eax, [0x5e7620]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.00426760
ud2
mov eax, dword [esp + 0x80]
mov dword [edi + 8], eax
lea eax, [0x5e7620]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.00426760
ud2
mov eax, dword [esp + 0x80]
mov dword [edi + 8], eax
lea eax, [0x5e7620]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.00426760
ud2
mov eax, dword [esp + 0x80]
mov dword [edi + 8], eax
lea eax, [0x5e7620]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.00426760
ud2
call fcn.00425980
ud2
call fcn.00425980
ud2
call fcn.00425980
ud2
call fcn.00425880
ud2
call fcn.00425980
ud2
call fcn.00425980
ud2
call fcn.00425980
ud2
call fcn.00425980
ud2
call fcn.00425980
ud2
call fcn.00425980
ud2
call fcn.00425980
ud2
call fcn.00425980
ud2
call fcn.00425980
ud2
call fcn.00425980
ud2
call fcn.00425980
ud2
call fcn.00425980
ud2
call fcn.00449f40
jmp fcn.0049b630