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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4a7cdd
sub esp, 0x6c
mov eax, dword [esp + 0x70]
mov byte [eax + 0x7c], 0
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x74]
xor ebx, ebx
xor ebp, ebp
jmp 0x4a707e
inc ebx
cmp ebx, ecx
jge 0x4a6f88
jae 0x4a7cd6
movzx edi, byte [edx + ebx]
xchg edi, eax
cmp al, 0x25
xchg edi, eax
jne 0x4a6f72
mov dword [esp + 0x38], ebp
cmp ebx, esi
jg 0x4a7b9e
cmp ebx, ecx
jge 0x4a7b95
nop
mov dword [eax + 0x24], 0
mov dword [eax + 0x25], 0
mov dword [eax + 0x29], 0
inc ebx
jmp 0x4a6fb6
inc ebx
cmp ebx, ecx
jge 0x4a7b89
jae 0x4a7cc8
movzx esi, byte [edx + ebx]
xchg esi, eax
cmp al, 0x23
xchg esi, eax
ja 0x4a7b47
xchg esi, eax
cmp al, 0x20
xchg esi, eax
jne 0x4a6fe0
mov byte [eax + 0x29], 1
jmp 0x4a6fb5
xchg esi, eax
cmp al, 0x23
xchg esi, eax
jne 0x4a6fed
mov byte [eax + 0x28], 1
jmp 0x4a6fb5
xchg esi, eax
cmp al, 0x61
xchg esi, eax
jb 0x4a7b3b
xchg esi, eax
cmp al, 0x7a
xchg esi, eax
ja 0x4a7b2f
mov edi, dword [esp + 0x80]
cmp ebp, edi
jge 0x4a7095
xchg esi, eax
cmp al, 0x76
xchg esi, eax
jne 0x4a7091
movzx edx, byte [eax + 0x28]
mov byte [eax + 0x2c], dl
mov byte [eax + 0x28], 0
movzx edx, byte [eax + 0x27]
mov byte [eax + 0x2b], dl
mov byte [eax + 0x27], 0
cmp ebp, edi
jae 0x4a7cc1
mov dword [esp + 0x34], ebx
mov ecx, dword [esp + 0x7c]
lea edx, [ecx + ebp*8]
mov ebx, dword [edx + 4]
mov edx, dword [edx]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
xchg esi, eax
movzx edx, al
xchg esi, eax
mov dword [esp + 0xc], edx
call fcn.004a3ca0
mov eax, dword [esp + 0x38]
inc eax
mov ecx, dword [esp + 0x34]
inc ecx
mov esi, dword [esp + 0x78]
mov edi, dword [esp + 0x70]
mov edx, dword [esp + 0x74]
mov ebx, ecx
mov ebp, eax
mov eax, edi
mov ecx, esi
cmp ebx, ecx
jge 0x4a7c8e
mov byte [eax + 0x7d], 1
mov esi, ebx
jmp 0x4a6f73
cmp ebp, edi
jmp 0x4a7031
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], edi
call fcn.004a6ba0
mov eax, dword [esp + 0x18]
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0x1c]
movzx edx, byte [esp + 0x20]
mov byte [esp + 0x27], dl
mov ebx, dword [esp + 0x78]
cmp ecx, ebx
jge 0x4a7b26
jae 0x4a7cba
mov ebp, dword [esp + 0x74]
movzx esi, byte [ebp + ecx]
xchg esi, eax
cmp al, 0x2a
xchg esi, eax
je 0x4a7a16
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
call fcn.004a16b0
mov eax, dword [esp + 0x10]
movzx ecx, byte [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x70]
mov dword [ebx + 0x30], eax
mov byte [ebx + 0x24], cl
movzx eax, byte [esp + 0x27]
test al, al
je 0x4a7128
test cl, cl
je 0x4a7128
mov byte [ebx + 0x7d], 0
mov ecx, dword [esp + 0x4c]
lea ebp, [edx + 1]
mov esi, dword [esp + 0x78]
cmp ebp, esi
jge 0x4a7a0d
cmp edx, esi
jae 0x4a7cb3
mov dword [esp + 0x4c], ebp
mov edi, dword [esp + 0x74]
movzx ebp, byte [edi + edx]
xchg ebp, eax
cmp al, 0x2e
xchg ebp, eax
je 0x4a783d
test al, al
je 0x4a7801
mov dword [esp + 0x4c], ecx
cmp edx, esi
jge 0x4a7300
jae 0x4a7ca5
movzx eax, byte [edi + edx]
cmp eax, 0x80
jge 0x4a72bd
mov ebp, 1
add edx, ebp
mov dword [esp + 0x34], edx
cmp eax, 0x25
jne 0x4a720a
nop
mov eax, dword [ebx + 4]
lea ebp, [eax + 1]
mov edi, dword [ebx]
mov esi, dword [ebx + 8]
cmp ebp, esi
ja 0x4a71b6
lea ebp, [eax + 1]
mov dword [ebx + 4], ebp
mov byte [edi + eax], 0x25
mov eax, ecx
mov ecx, edx
jmp 0x4a706a
lea ecx, [0x597d60]
mov dword [esp], ecx
mov dword [esp + 4], edi
mov dword [esp + 8], eax
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebp
call fcn.00439070
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x70]
mov dword [edi + 8], edx
mov edx, dword [0x738420]
test edx, edx
jne 0x4a7203
mov dword [edi], eax
mov edx, dword [esp + 0x34]
mov ebx, edi
mov edi, eax
mov eax, ecx
mov ecx, dword [esp + 0x4c]
jmp 0x4a71a3
call fcn.0044cea0
jmp 0x4a71f3
movzx ebp, byte [ebx + 0x7d]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4a72a0
mov ebp, dword [esp + 0x80]
cmp ecx, ebp
jge 0x4a7283
cmp eax, 0x76
jne 0x4a727f
movzx edi, byte [ebx + 0x28]
xchg edi, eax
mov byte [ebx + 0x2c], al
xchg edi, eax
mov byte [ebx + 0x28], 0
movzx edi, byte [ebx + 0x27]
xchg edi, eax
mov byte [ebx + 0x2b], al
xchg edi, eax
mov byte [ebx + 0x27], 0
cmp ecx, ebp
jae 0x4a7c9e
mov edx, dword [esp + 0x7c]
lea ebp, [edx + ecx*8]
mov esi, dword [ebp]
mov ebp, dword [ebp + 4]
mov dword [esp], ebx
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
mov dword [esp + 0xc], eax
call fcn.004a3ca0
mov eax, dword [esp + 0x4c]
lea ecx, [eax + 1]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x70]
jmp 0x4a71ad
cmp ecx, ebp
jmp 0x4a7244
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.004a6de0
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x70]
mov ecx, dword [esp + 0x4c]
jmp 0x4a71ad
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.004a6c80
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x70]
mov ecx, dword [esp + 0x4c]
jmp 0x4a71ad
mov dword [esp + 0x34], edx
sub esi, edx
mov ecx, esi
xchg esi, ebx
neg ebx
xchg esi, ebx
sar esi, 0x1f
and esi, edx
lea ebx, [edi + esi]
mov dword [esp], ebx
mov dword [esp + 4], ecx
call fcn.0046dc40
mov eax, dword [esp + 8]
mov ebp, dword [esp + 0xc]
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x70]
mov esi, dword [esp + 0x78]
mov edi, dword [esp + 0x74]
jmp 0x4a7188
nop
mov eax, dword [ebx + 4]
lea edx, [eax + 0xa]
mov dword [esp + 0x48], edx
mov ebp, dword [ebx + 8]
mov esi, dword [ebx]
cmp edx, ebp
ja 0x4a77ce
mov dword [esp + 0x60], esi
mov dword [esp + 0x44], ebp
add eax, esi
mov dword [esp], eax
lea eax, [0x5c7494]
mov dword [esp + 4], eax
mov dword [esp + 8], 0xa
call fcn.0044d6a0
mov eax, dword [esp + 0x48]
mov edi, dword [esp + 0x70]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x44]
mov dword [edi + 8], eax
mov eax, dword [0x738420]
test eax, eax
jne 0x4a77c0
mov eax, dword [esp + 0x60]
mov dword [edi], eax
mov eax, dword [esp + 0x4c]
movzx ecx, byte [edi + 0x7c]
test cl, cl
jne 0x4a7724
mov ecx, dword [esp + 0x80]
cmp eax, ecx
jge 0x4a7724
mov dword [esp + 0x38], eax
nop
mov dword [edi + 0x24], 0
mov dword [edi + 0x25], 0
mov dword [edi + 0x29], 0
nop
mov edx, dword [edi + 4]
lea ebx, [edx + 9]
mov dword [esp + 0x4c], ebx
mov ebp, dword [edi + 8]
mov esi, dword [edi]
cmp ebx, ebp
ja 0x4a778d
mov dword [esp + 0x48], ebp
mov dword [esp + 0x60], esi
lea eax, [esi + edx]
mov dword [esp], eax
lea eax, [0x5c7188]
mov dword [esp + 4], eax
mov dword [esp + 8], 9
call fcn.0044d6a0
mov eax, dword [esp + 0x4c]
mov edi, dword [esp + 0x70]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x48]
mov dword [edi + 8], eax
mov eax, dword [0x738420]
test eax, eax
jne 0x4a7772
mov ecx, dword [esp + 0x60]
mov dword [edi], ecx
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x80]
cmp ecx, edx
ja 0x4a7c97
sub edx, ecx
mov dword [esp + 0x4c], edx
mov ebx, dword [esp + 0x84]
sub ebx, ecx
neg ebx
shl ecx, 3
sar ebx, 0x1f
and ecx, ebx
mov ebx, dword [esp + 0x7c]
add ecx, ebx
mov dword [esp + 0x5c], ecx
xor eax, eax
jmp 0x4a7445
inc eax
mov ebx, dword [esp + 0x4c]
mov ebp, dword [esp + 0x5c]
mov ecx, ebp
mov edx, ebx
cmp eax, edx
jge 0x4a770a
mov dword [esp + 0x30], eax
lea ebx, [ecx + eax*8]
mov ebp, dword [ebx + 4]
mov dword [esp + 0x58], ebp
mov ebx, dword [ebx]
mov dword [esp + 0x3c], ebx
test eax, eax
jle 0x4a7498
nop
mov esi, dword [edi + 4]
lea ebp, [esi + 2]
mov ecx, dword [edi + 8]
mov edx, dword [edi]
cmp ebp, ecx
ja 0x4a76c3
mov ebx, 0x202c
mov word [edx + esi], bx
mov dword [edi + 4], ebp
mov dword [edi + 8], ecx
mov ecx, dword [0x738420]
test ecx, ecx
jne 0x4a76b3
mov dword [edi], edx
mov ecx, dword [esp + 0x3c]
test ecx, ecx
jne 0x4a752f
nop
mov ecx, dword [edi + 4]
lea edx, [ecx + 5]
mov ebx, dword [edi + 8]
mov ebp, dword [edi]
cmp edx, ebx
ja 0x4a74ef
mov esi, 0x6c696e3c
mov dword [ebp + ecx], esi
mov esi, 0x3e
xchg esi, eax
mov byte [ebp + ecx + 4], al
xchg esi, eax
mov dword [edi + 4], edx
mov dword [edi + 8], ebx
mov ecx, dword [0x738420]
test ecx, ecx
jne 0x4a74df
mov dword [edi], ebp
jmp 0x4a7438
mov ecx, eax
mov eax, ebp
call fcn.0044cea0
mov eax, ecx
jmp 0x4a7438
mov dword [esp + 0x48], edx
mov dword [esp + 0x44], ecx
lea eax, [0x597d60]
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.00439070
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x48]
mov edi, dword [esp + 0x70]
jmp 0x4a74b4
mov dword [esp + 0x64], ecx
mov edx, dword [esp + 0x58]
mov dword [esp + 0x68], edx
nop
mov ebx, dword [esp + 0x64]
nop
test ebx, ebx
je 0x4a76aa
lea ebp, [0x604040]
mov eax, dword [ebp + 0x80]
mov dword [esp], ebx
call eax
nop
mov eax, dword [esp + 8]
mov dword [esp + 0x28], eax
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x70]
mov ebx, dword [edx + 4]
mov dword [esp + 0x48], ebx
lea ebp, [ebx + eax]
mov dword [esp + 0x44], ebp
mov esi, dword [edx + 8]
mov edi, dword [edx]
cmp ebp, esi
ja 0x4a766f
mov dword [esp + 0x60], edi
mov dword [esp + 0x40], esi
lea edx, [edi + ebx]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0044d6a0
mov eax, dword [esp + 0x44]
mov edi, dword [esp + 0x70]
mov dword [edi + 4], eax
mov ecx, dword [esp + 0x40]
mov dword [edi + 8], ecx
mov edx, dword [0x738420]
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 0x28]
lea ebx, [ebp + ebx + 1]
test edx, edx
jne 0x4a7659
mov edx, dword [esp + 0x60]
mov dword [edi], edx
nop
cmp ebx, ecx
ja 0x4a760f
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [edx + eax], 0x3d
mov dword [esp], edi
mov eax, dword [esp + 0x3c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0x76
call fcn.004a3ca0
mov eax, dword [esp + 0x30]
mov edi, dword [esp + 0x70]
jmp 0x4a7438
lea ebp, [0x597d60]
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.00439070
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x70]
mov dword [edi + 8], edx
mov edx, dword [0x738420]
test edx, edx
jne 0x4a7652
mov dword [edi], eax
mov edx, eax
mov eax, ecx
jmp 0x4a75d8
call fcn.0044cea0
jmp 0x4a764c
mov edx, eax
mov eax, dword [esp + 0x60]
call fcn.0044cea0
mov eax, edx
mov edx, dword [esp + 0x60]
jmp 0x4a75d3
mov dword [esp + 0x50], ecx
lea eax, [0x597d60]
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.00439070
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x50]
mov ebx, dword [esp + 0x48]
jmp 0x4a7586
xor ebx, ebx
xor ebp, ebp
jmp 0x4a754f
mov ecx, eax
mov eax, edx
call fcn.0044cea0
mov eax, ecx
jmp 0x4a7498
mov dword [esp + 0x48], esi
mov dword [esp + 0x44], ebp
lea eax, [0x597d60]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
call fcn.00439070
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x30]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x44]
mov esi, dword [esp + 0x48]
mov edi, dword [esp + 0x70]
jmp 0x4a7479
nop
mov eax, dword [edi + 4]
lea ecx, [eax + 1]
mov edx, dword [edi + 8]
mov ebx, dword [edi]
cmp ecx, edx
ja 0x4a7728
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [ebx + eax], 0x29
add esp, 0x6c
ret
lea ebp, [0x597d60]
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.00439070
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x70]
mov dword [edi + 8], edx
mov edx, dword [0x738420]
test edx, edx
jne 0x4a776b
mov dword [edi], eax
mov ebx, eax
mov eax, ecx
jmp 0x4a771a
call fcn.0044cea0
jmp 0x4a7765
mov eax, dword [esp + 0x60]
call fcn.0044cea0
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x80]
cmp ecx, edx
jmp 0x4a740b
mov dword [esp + 0x48], edx
lea eax, [0x597d60]
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.00439070
mov ebp, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x48]
jmp 0x4a73b3
mov eax, dword [esp + 0x60]
call fcn.0044cea0
jmp 0x4a7362
mov dword [esp + 0x44], eax
lea ecx, [0x597d60]
mov dword [esp], ecx
mov dword [esp + 4], esi
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edx
call fcn.00439070
mov ebp, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x44]
jmp 0x4a7318
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], edx
mov eax, dword [esp + 0x80]
mov dword [esp + 0x14], eax
call fcn.004a6ba0
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x70]
mov esi, dword [esp + 0x78]
mov edi, dword [esp + 0x74]
jmp 0x4a7162
test al, al
je 0x4a7845
mov byte [ebx + 0x7d], 0
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov dword [esp + 0xc], esi
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x14], eax
call fcn.004a6ba0
mov eax, dword [esp + 0x18]
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0x1c]
movzx edx, byte [esp + 0x20]
mov byte [esp + 0x27], dl
mov ebx, dword [esp + 0x78]
cmp ecx, ebx
jge 0x4a7a04
jae 0x4a7cac
mov ebp, dword [esp + 0x74]
movzx esi, byte [ebp + ecx]
xchg esi, eax
cmp al, 0x2a
xchg esi, eax
je 0x4a78f5
mov dword [esp], ebp
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
call fcn.004a16b0
mov eax, dword [esp + 0x10]
movzx ecx, byte [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x70]
mov dword [ebx + 0x34], eax
mov byte [ebx + 0x25], cl
test cl, cl
je 0x4a78e8
movzx eax, byte [esp + 0x27]
mov ecx, dword [esp + 0x4c]
mov esi, dword [esp + 0x78]
mov edi, dword [esp + 0x74]
jmp 0x4a715a
mov dword [ebx + 0x34], 0
mov byte [ebx + 0x25], 1
jmp 0x4a78d2
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp], ecx
mov edx, dword [esp + 0x80]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x84]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
call fcn.004a6770
mov eax, dword [esp + 0x10]
movzx ecx, byte [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x70]
mov dword [ebx + 0x34], eax
mov byte [ebx + 0x25], cl
mov eax, dword [ebx + 0x34]
test eax, eax
jge 0x4a7948
mov dword [ebx + 0x34], 0
mov byte [ebx + 0x25], 0
movzx eax, byte [ebx + 0x25]
test al, al
je 0x4a7960
mov ebp, dword [esp + 0x34]
inc ebp
xor eax, eax
mov ecx, edx
mov edx, ebp
jmp 0x4a78db
mov dword [esp + 0x48], edx
nop
mov eax, dword [ebx + 4]
lea ecx, [eax + 0xb]
mov dword [esp + 0x4c], ecx
mov ebp, dword [ebx]
mov esi, dword [ebx + 8]
cmp ecx, esi
ja 0x4a79d1
mov dword [esp + 0x44], esi
mov dword [esp + 0x60], ebp
add eax, ebp
mov dword [esp], eax
lea eax, [0x5c77e2]
mov dword [esp + 4], eax
mov dword [esp + 8], 0xb
call fcn.0044d6a0
mov eax, dword [esp + 0x4c]
mov edi, dword [esp + 0x70]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x44]
mov dword [edi + 8], eax
mov eax, dword [0x738420]
test eax, eax
jne 0x4a79c6
mov eax, dword [esp + 0x60]
mov dword [edi], eax
mov edx, dword [esp + 0x48]
mov ebx, edi
jmp 0x4a7950
mov eax, dword [esp + 0x60]
call fcn.0044cea0
jmp 0x4a79be
mov dword [esp + 0x44], eax
lea edx, [0x597d60]
mov dword [esp], edx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ecx
call fcn.00439070
mov ebp, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x44]
jmp 0x4a7978
mov ebp, dword [esp + 0x74]
jmp 0x4a78a3
mov edi, dword [esp + 0x74]
jmp 0x4a715a
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x7c]
mov dword [esp], ecx
mov edx, dword [esp + 0x80]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x84]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
call fcn.004a6770
mov eax, dword [esp + 0x10]
movzx ecx, byte [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x70]
mov dword [ebx + 0x30], eax
mov byte [ebx + 0x24], cl
test cl, cl
je 0x4a7a7f
mov eax, dword [ebx + 0x30]
test eax, eax
jge 0x4a7a6f
neg eax
mov dword [ebx + 0x30], eax
mov byte [ebx + 0x26], 1
mov byte [ebx + 0x2a], 0
mov ebp, dword [esp + 0x34]
inc ebp
xor eax, eax
mov ecx, edx
mov edx, ebp
jmp 0x4a712c
mov dword [esp + 0x40], edx
nop
mov eax, dword [ebx + 4]
lea ecx, [eax + 0xc]
mov dword [esp + 0x4c], ecx
mov ebp, dword [ebx]
mov esi, dword [ebx + 8]
cmp ecx, esi
ja 0x4a7af3
mov dword [esp + 0x44], esi
mov dword [esp + 0x60], ebp
add eax, ebp
mov dword [esp], eax
lea eax, [0x5c7bd2]
mov dword [esp + 4], eax
mov dword [esp + 8], 0xc
call fcn.0044d6a0
mov eax, dword [esp + 0x4c]
mov edi, dword [esp + 0x70]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x44]
mov dword [edi + 8], eax
mov eax, dword [0x738420]
test eax, eax
jne 0x4a7ae8
mov eax, dword [esp + 0x60]
mov dword [edi], eax
mov edx, dword [esp + 0x40]
mov ebx, edi
jmp 0x4a7a5b
mov eax, dword [esp + 0x60]
call fcn.0044cea0
jmp 0x4a7add
mov dword [esp + 0x44], eax
lea edx, [0x597d60]
mov dword [esp], edx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ecx
call fcn.00439070
mov esi, dword [esp + 0x1c]
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x44]
jmp 0x4a7a97
mov ebp, dword [esp + 0x74]
jmp 0x4a70ec
mov edi, dword [esp + 0x80]
jmp 0x4a7095
mov edi, dword [esp + 0x80]
jmp 0x4a7095
xchg esi, eax
cmp al, 0x2b
xchg esi, eax
jne 0x4a7b57
mov byte [eax + 0x27], 1
jmp 0x4a6fb5
xchg esi, eax
cmp al, 0x2d
xchg esi, eax
jne 0x4a7b6b
mov byte [eax + 0x26], 1
mov byte [eax + 0x2a], 0
jmp 0x4a6fb5
xchg esi, eax
cmp al, 0x30
xchg esi, eax
jne 0x4a6fed
movzx esi, byte [eax + 0x26]
xor esi, 1
xchg esi, ebx
mov byte [eax + 0x2a], bl
xchg esi, ebx
jmp 0x4a6fb5
mov edi, dword [esp + 0x80]
jmp 0x4a7095
mov edi, eax
mov eax, ebp
jmp 0x4a7366
test ebx, ebx
jl 0x4a7ccf
cmp esi, ebx
ja 0x4a7ccf
cmp ebx, ecx
ja 0x4a7ccf
mov dword [esp + 0x34], ebx
nop
sub ebx, esi
mov dword [esp + 0x2c], ebx
neg ebx
sar ebx, 0x1f
and ebx, esi
add ebx, edx
mov esi, dword [eax + 4]
mov ebp, dword [esp + 0x2c]
lea edx, [ebp + esi]
mov dword [esp + 0x4c], edx
mov ecx, dword [eax]
mov edi, dword [eax + 8]
cmp edx, edi
ja 0x4a7c4f
mov dword [esp + 0x44], edi
mov dword [esp + 0x60], ecx
lea eax, [ecx + esi]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
call fcn.0044d6a0
mov eax, dword [esp + 0x4c]
mov edi, dword [esp + 0x70]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x44]
mov dword [edi + 8], eax
mov eax, dword [0x738420]
test eax, eax
jne 0x4a7c3a
mov eax, dword [esp + 0x60]
mov dword [edi], eax
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x78]
cmp eax, ecx
mov edx, dword [esp + 0x74]
mov ebx, eax
mov ebp, dword [esp + 0x38]
mov eax, edi
jmp 0x4a6f96
mov eax, dword [esp + 0x60]
call fcn.0044cea0
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x78]
cmp eax, ecx
jmp 0x4a7c29
mov dword [esp + 0x44], esi
mov dword [esp + 0x54], ebx
lea eax, [0x597d60]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], edx
call fcn.00439070
mov ecx, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x54]
mov ebp, dword [esp + 0x2c]
mov esi, dword [esp + 0x44]
jmp 0x4a7be2
mov edi, eax
mov eax, ebp
jmp 0x4a7366
call fcn.00427100
ud2
call fcn.00427000
ud2
call fcn.00427000
ud2
call fcn.00427000
ud2
call fcn.00427000
ud2
call fcn.00427000
ud2
call fcn.00427000
ud2
call fcn.00427000
ud2
call fcn.00427100
ud2
call fcn.00427000
ud2
call fcn.0044b750
jmp fcn.004a6f40