Function at 0x4cd420
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 0x4cf54b
sub esp, 0xe8
mov ecx, dword [esp + 0x100]
test ecx, ecx
jle 0x4cf4ce
mov edx, dword [esp + 0xf8]
test edx, edx
je 0x4cd466
test edx, 0x60
je 0x4cf44a
mov edi, dword [esp + 0xec]
mov dword [edi + 0xc], 0
mov ebx, dword [0xa918d0]
test ebx, ebx
jne 0x4cf433
mov dword [edi + 0x10], 0
mov dword [edi + 0x1c], edx
mov ebx, dword [0xa918d0]
test ebx, ebx
jne 0x4cf3fd
mov ebx, dword [esp + 0xf0]
mov dword [edi + 0x14], ebx
mov ebp, dword [esp + 0xf4]
mov dword [edi + 0x18], ebp
nop
mov esi, edx
and edx, 0x1f
mov dword [esp + 0x7c], edx
cmp edx, 0x10
jbe 0x4ceff3
cmp edx, 0x15
ja 0x4ce854
cmp edx, 0x13
ja 0x4cdeca
cmp edx, 0x11
jne 0x4cde85
mov eax, dword [esp + 0xfc]
cmp eax, 0x71
jg 0x4cde6e
cmp eax, 0x58
jne 0x4cde60
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.00481520
mov eax, dword [esp + 0xc]
mov dword [esp + 0x3c], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x80], 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
cmp dword [esp + 4], 8
jne 0x4cd7f3
mov eax, dword [esp + 0x7c]
cmp eax, 0x17
je 0x4cd7bd
mov eax, dword [esp + 0xf8]
test eax, 0x100
jne 0x4cd73d
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.0047e540
mov eax, dword [esp + 0xc]
mov dword [esp + 0x6c], eax
lea ecx, [0x7488c0]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.0043c700
mov eax, dword [esp + 0xc]
mov dword [esp + 0xb0], eax
xor ecx, ecx
jmp 0x4cd5b6
mov ebx, dword [esp + 0xb0]
mov byte [ebx + eax], dl
lea edx, [eax + 1]
mov eax, ebx
mov ecx, edx
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jge 0x4cd6ca
mov dword [esp + 0x5c], 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
mov dword [esp + 0xc], ecx
call fcn.0047d790
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
nop
and eax, 0x1f
mov dword [esp + 0x7c], eax
cmp eax, 9
ja 0x4cd688
cmp eax, 7
jne 0x4cd620
mov edx, dword [ecx]
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x6c]
cmp eax, ecx
jb 0x4cd5a5
jmp 0x4cf53e
cmp eax, 8
jne 0x4cd634
movzx edx, byte [ecx]
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x6c]
cmp eax, ecx
jmp 0x4cd619
cmp eax, 9
jne 0x4cd648
movzx edx, word [ecx]
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x6c]
cmp eax, ecx
jmp 0x4cd619
lea eax, [0x764780]
mov dword [esp], eax
call fcn.0040a580
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x12
mov eax, dword [0xa918d0]
test eax, eax
jne 0x4cd678
lea eax, [0x7aaae3]
mov dword [edi], eax
jmp 0x4cf4da
lea eax, [0x7aaae3]
call fcn.00451480
jmp 0x4cf4da
cmp eax, 0xa
jne 0x4cd69e
mov edx, dword [ecx]
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x6c]
cmp eax, ecx
jmp 0x4cd619
cmp eax, 0xb
jne 0x4cd6b4
mov edx, dword [ecx]
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x6c]
cmp eax, ecx
jmp 0x4cd619
cmp eax, 0xc
jne 0x4cd648
mov edx, dword [ecx]
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x6c]
cmp eax, ecx
jmp 0x4cd619
mov ecx, edx
mov dword [esp + 0x6c], edx
mov dword [esp + 0x68], ecx
mov dword [esp + 0x9c], eax
mov ebx, dword [esp + 0x3c]
mov ebx, dword [ebx + 0x80]
mov ebp, dword [esp + 0x80]
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 + 0x68]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x6c]
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.004cb450
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.0047e540
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.00480e10
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0047ae00
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0xc]
jmp 0x4cd6cc
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.0047ae00
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0xc]
jmp 0x4cd6cc
mov eax, dword [esp + 0xec]
movzx ecx, byte [eax + 0x2c]
test cl, cl
jne 0x4cda16
nop
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax + 8]
mov ebp, dword [eax]
cmp edx, ebx
ja 0x4cd9c6
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebp + ecx], 0x5b
xor ecx, ecx
jmp 0x4cd899
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.0047d790
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0xec]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
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.004cd420
mov eax, dword [esp + 0x54]
lea ecx, [eax + 1]
mov dword [esp + 0x54], 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.0047e540
mov eax, dword [esp + 0x54]
cmp dword [esp + 0xc], eax
jle 0x4cd951
test eax, eax
jle 0x4cd829
nop
mov ecx, dword [esp + 0xec]
mov edx, dword [ecx + 4]
lea ebx, [edx + 1]
mov ebp, dword [ecx + 8]
mov esi, dword [ecx]
cmp ebx, ebp
ja 0x4cd8fe
lea ebx, [edx + 1]
mov dword [ecx + 4], ebx
mov byte [esi + edx], 0x20
jmp 0x4cd829
lea eax, [0x7488c0]
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.0043c860
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 [0xa918d0]
test edx, edx
jne 0x4cd94a
mov dword [edi], eax
mov edx, ecx
mov esi, eax
mov eax, dword [esp + 0x54]
mov ecx, edi
jmp 0x4cd8ef
call fcn.00451480
jmp 0x4cd93e
nop
mov eax, dword [esp + 0xec]
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
cmp edx, ebp
ja 0x4cd979
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebx + ecx], 0x5d
add esp, 0xe8
ret
lea eax, [0x7488c0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edx
call fcn.0043c860
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 [0xa918d0]
test edx, edx
jne 0x4cd9bf
mov dword [edi], eax
mov ebx, eax
mov eax, edi
jmp 0x4cd968
call fcn.00451480
jmp 0x4cd9b9
lea eax, [0x7488c0]
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.0043c860
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 [0xa918d0]
test edx, edx
jne 0x4cda0f
mov dword [edi], eax
mov ebp, eax
mov eax, edi
jmp 0x4cd81a
call fcn.00451480
jmp 0x4cda06
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.00481520
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 + 0x44], eax
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0xec]
mov ebx, dword [edx + 4]
mov dword [esp + 0x78], ebx
lea ebp, [eax + ebx]
mov dword [esp + 0x74], ebp
mov esi, dword [edx]
mov edi, dword [edx + 8]
cmp ebp, edi
ja 0x4cde1f
mov dword [esp + 0xac], esi
mov dword [esp + 0x70], edi
lea edx, [esi + ebx]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00451e30
mov eax, dword [esp + 0x74]
mov edi, dword [esp + 0xec]
mov dword [edi + 4], eax
mov ecx, dword [esp + 0x70]
mov dword [edi + 8], ecx
mov edx, dword [0xa918d0]
test edx, edx
jne 0x4cde03
mov edx, dword [esp + 0xac]
mov dword [edi], edx
mov ebx, dword [esp + 0x7c]
cmp ebx, 0x17
jne 0x4cddf7
add ebx, 0xffffffeb
cmp ebx, 1
ja 0x4cddd6
mov ebx, dword [esp + 0xf8]
test ebx, 0x200
je 0x4cdda6
xor ebp, ebp
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x4cdd23
nop
mov ebp, dword [esp + 0x78]
mov esi, dword [esp + 0x44]
lea ebp, [esi + ebp + 1]
cmp ebp, ecx
ja 0x4cdccc
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [edx + eax], 0x7b
xor eax, eax
jmp 0x4cdb96
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.0047d790
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0xec]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
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.004cd420
mov eax, dword [esp + 0x58]
inc eax
mov ebx, dword [esp + 0xf8]
mov dword [esp + 0x58], 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.0047e540
mov eax, dword [esp + 0x58]
cmp dword [esp + 0xc], eax
jle 0x4cdc59
test eax, eax
jle 0x4cdb21
nop
mov edi, dword [esp + 0xec]
mov ecx, dword [edi + 4]
lea edx, [ecx + 2]
mov ebx, dword [edi + 8]
mov ebp, dword [edi]
cmp edx, ebx
ja 0x4cdc16
mov esi, 0x202c
mov word [ebp + ecx], si
mov dword [edi + 4], edx
mov dword [edi + 8], ebx
mov ecx, dword [0xa918d0]
test ecx, ecx
jne 0x4cdc06
mov dword [edi], ebp
jmp 0x4cdb21
mov ecx, eax
mov eax, ebp
call fcn.00451480
mov eax, ecx
jmp 0x4cdb21
mov dword [esp + 0x78], ecx
mov dword [esp + 0x74], edx
lea eax, [0x7488c0]
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.0043c860
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x74]
mov edi, dword [esp + 0xec]
jmp 0x4cdbe5
nop
mov eax, dword [esp + 0xec]
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
cmp edx, ebp
ja 0x4cdc7f
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebx + ecx], 0x7d
jmp 0x4cd972
lea eax, [0x7488c0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edx
call fcn.0043c860
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 [0xa918d0]
test edx, edx
jne 0x4cdcc5
mov dword [edi], eax
mov ebx, eax
mov eax, edi
jmp 0x4cdc70
call fcn.00451480
jmp 0x4cdcbf
lea ebx, [0x7488c0]
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.0043c860
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 [0xa918d0]
test edx, edx
jne 0x4cdd1c
mov dword [edi], eax
mov ebx, dword [esp + 0xf8]
mov edx, eax
mov eax, ecx
jmp 0x4cdb13
call fcn.00451480
jmp 0x4cdd0c
nop
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x44]
lea ebx, [ebp + ebx + 5]
cmp ebx, ecx
ja 0x4cdd6b
mov ebp, 0x6c696e28
mov dword [edx + eax], ebp
mov ebp, 0x29
xchg ebp, ebx
mov byte [edx + eax + 4], bl
xchg ebp, ebx
mov dword [edi + 4], ebx
mov dword [edi + 8], ecx
mov ecx, dword [0xa918d0]
test ecx, ecx
jne 0x4cdd62
mov dword [edi], edx
add esp, 0xe8
ret
mov eax, edx
call fcn.00451480
jmp 0x4cdd5b
mov dword [esp + 0x78], ebx
lea ebp, [0x7488c0]
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.0043c860
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x74]
mov ebx, dword [esp + 0x78]
mov edi, dword [esp + 0xec]
jmp 0x4cdd34
test ebx, 0x80
je 0x4cddcb
mov ebp, dword [esp + 0xf4]
mov esi, dword [ebp]
test esi, esi
xchg esi, ebx
setne bl
xchg esi, ebx
xor esi, 1
mov ebp, esi
jmp 0x4cdaf4
mov ebp, dword [esp + 0xf4]
mov esi, ebp
jmp 0x4cddb8
mov esi, dword [esp + 0xf4]
mov esi, dword [esi]
test esi, esi
xchg ebp, ebx
setne bl
xchg ebp, ebx
xor ebp, 1
mov ebx, dword [esp + 0xf8]
jmp 0x4cdaf4
mov ebx, dword [esp + 0xf8]
jmp 0x4cdafe
mov edx, eax
mov eax, dword [esp + 0xac]
call fcn.00451480
mov eax, edx
mov edx, dword [esp + 0xac]
jmp 0x4cdac6
mov dword [esp + 0x88], ecx
lea eax, [0x7488c0]
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.0043c860
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x88]
mov ebx, dword [esp + 0x78]
jmp 0x4cda7c
cmp eax, 0x71
je 0x4cd4f5
jmp 0x4cd7f3
cmp eax, 0x73
je 0x4cd4f5
cmp eax, 0x78
je 0x4cd4f5
jmp 0x4cd7f3
lea eax, [edx - 0x12]
cmp eax, 1
ja 0x4cdeb1
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.004cbb40
jmp 0x4cd972
mov dword [esp], edi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], esi
call fcn.004ca390
jmp 0x4cd972
cmp edx, 0x14
je 0x4ce5cf
movzx edx, byte [edi + 0x2c]
test dl, dl
jne 0x4ce347
nop
mov edx, dword [edi + 4]
mov eax, ecx
lea ecx, [edx + 4]
mov esi, dword [edi + 8]
mov ebp, dword [edi]
cmp ecx, esi
ja 0x4ce2f7
mov ebx, 0x5b70616d
mov dword [ebp + edx], ebx
mov dword [edi + 4], ecx
mov dword [edi + 8], esi
mov ecx, dword [0xa918d0]
test ecx, ecx
jne 0x4ce2e7
mov dword [edi], ebp
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.0048e000
mov eax, dword [esp + 0xc]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
test ecx, ecx
jle 0x4ce0b2
mov dword [esp + 0x84], eax
mov dword [esp + 0x78], ecx
xor ebx, ebx
jmp 0x4cdf6c
mov ebp, dword [esp + 0xa8]
lea edx, [ebp + 0xc]
mov ebx, eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0xa8], edx
mov dword [esp + 0x60], ebx
mov ebp, dword [edx + 8]
mov dword [esp + 0x7c], ebp
mov esi, dword [edx + 4]
mov dword [esp + 0xb0], esi
mov edi, edx
mov edx, dword [edx]
mov dword [esp + 0xa4], edx
test ebx, ebx
jle 0x4ce2db
mov ecx, dword [esp + 0xec]
movzx ebx, byte [ecx + 0x2c]
test bl, bl
je 0x4ce250
nop
mov ebx, dword [ecx + 4]
lea ebp, [ebx + 2]
mov esi, dword [ecx]
mov edx, dword [ecx + 8]
cmp ebp, edx
ja 0x4ce200
mov dword [esp + 0x74], edx
mov edx, 0x202c
mov word [esi + ebx], dx
mov dword [ecx + 4], ebp
mov edx, dword [esp + 0x74]
mov dword [ecx + 8], edx
mov edx, dword [0xa918d0]
test edx, edx
jne 0x4ce1ea
mov dword [ecx], esi
mov dword [esp], ecx
mov eax, dword [esp + 0xa4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
mov edx, dword [esp + 0x100]
lea ebx, [edx + 1]
mov dword [esp + 0x74], ebx
mov dword [esp + 0x14], ebx
call fcn.004cd420
nop
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
ja 0x4ce19a
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebp + ecx], 0x3a
mov edx, dword [esp + 0x84]
mov ecx, dword [edx + 0x10]
mov ebx, dword [edx + 0xc]
mov ebp, dword [esp + 0x60]
cmp ebp, ecx
jae 0x4cf543
lea ecx, [ebp + ebp*2]
mov edx, dword [ebx + ecx*4 + 8]
mov esi, dword [ebx + ecx*4 + 4]
mov ecx, dword [ebx + ecx*4]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], edx
mov ecx, dword [esp + 0xfc]
mov dword [esp + 0x10], ecx
mov edx, dword [esp + 0x74]
mov dword [esp + 0x14], edx
call fcn.004cd420
mov eax, dword [esp + 0x60]
inc eax
mov ecx, dword [esp + 0x78]
cmp eax, ecx
jl 0x4cdf59
mov eax, dword [esp + 0xec]
movzx ecx, byte [eax + 0x2c]
test cl, cl
je 0x4ce12d
nop
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
cmp edx, ebp
ja 0x4ce0e0
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebx + ecx], 0x7d
jmp 0x4cd972
lea eax, [0x7488c0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edx
call fcn.0043c860
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 [0xa918d0]
test edx, edx
jne 0x4ce126
mov dword [edi], eax
mov ebx, eax
mov eax, edi
jmp 0x4ce0d1
call fcn.00451480
jmp 0x4ce120
nop
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax + 8]
mov ebp, dword [eax]
cmp edx, ebx
ja 0x4ce14d
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebp + ecx], 0x5d
jmp 0x4cd972
lea eax, [0x7488c0]
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.0043c860
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 [0xa918d0]
test edx, edx
jne 0x4ce193
mov dword [edi], eax
mov ebp, eax
mov eax, edi
jmp 0x4ce13d
call fcn.00451480
jmp 0x4ce18d
lea eax, [0x7488c0]
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.0043c860
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 [0xa918d0]
test edx, edx
jne 0x4ce1e3
mov dword [edi], eax
mov ebp, eax
mov eax, edi
jmp 0x4ce047
call fcn.00451480
jmp 0x4ce1da
mov edx, edi
mov edi, ecx
mov ebx, eax
mov eax, esi
call fcn.00451480
mov eax, ebx
mov edi, edx
jmp 0x4cdfe9
mov dword [esp + 0x74], ebp
mov dword [esp + 0x70], ebx
lea eax, [0x7488c0]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ebp
call fcn.0043c860
mov edx, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0xec]
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x74]
mov edi, dword [esp + 0xa8]
jmp 0x4cdfc2
nop
mov ebx, dword [ecx + 4]
lea edi, [ebx + 1]
mov eax, dword [ecx + 8]
mov ebp, dword [ecx]
cmp edi, eax
ja 0x4ce27e
lea esi, [ebx + 1]
mov dword [ecx + 4], esi
mov byte [ebp + ebx], 0x20
mov eax, dword [esp + 0x84]
mov edi, dword [esp + 0xa8]
jmp 0x4cdfe9
lea ecx, [0x7488c0]
mov dword [esp], ecx
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edi
call fcn.0043c860
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 [0xa918d0]
test edx, edx
jne 0x4ce2d4
mov dword [edi], eax
mov edx, dword [esp + 0xa4]
mov esi, dword [esp + 0xb0]
mov ebx, ecx
mov ebp, eax
mov ecx, edi
jmp 0x4ce260
call fcn.00451480
jmp 0x4ce2be
mov ecx, dword [esp + 0xec]
jmp 0x4cdfe9
mov ecx, eax
mov eax, ebp
call fcn.00451480
mov eax, ecx
jmp 0x4cdf14
mov dword [esp + 0x78], ecx
mov dword [esp + 0x74], edx
lea eax, [0x7488c0]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ecx
call fcn.0043c860
mov ebp, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x100]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x74]
mov ebx, dword [esp + 0xf0]
mov edi, dword [esp + 0xec]
jmp 0x4cdef5
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.00481520
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 + 0x48], ecx
mov edx, dword [esp + 0xec]
mov ebx, dword [edx + 4]
mov dword [esp + 0x78], ebx
lea ebp, [ecx + ebx]
mov dword [esp + 0x74], ebp
mov esi, dword [edx]
mov edi, dword [edx + 8]
cmp ebp, edi
ja 0x4ce58e
mov dword [esp + 0x70], edi
mov dword [esp + 0xac], esi
lea edx, [esi + ebx]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00451e30
mov eax, dword [esp + 0x74]
mov edi, dword [esp + 0xec]
mov dword [edi + 4], eax
mov ecx, dword [esp + 0x70]
mov dword [edi + 8], ecx
mov edx, dword [0xa918d0]
test edx, edx
jne 0x4ce572
mov edx, dword [esp + 0xac]
mov dword [edi], edx
mov ebx, dword [esp + 0x7c]
lea ebp, [ebx - 0x15]
cmp ebp, 1
ja 0x4ce532
mov ebx, dword [esp + 0xf8]
test ebx, 0x200
je 0x4ce475
nop
mov ebp, dword [esp + 0x78]
mov esi, dword [esp + 0x48]
lea ebp, [esi + ebp + 1]
cmp ebp, ecx
ja 0x4ce421
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [edx + eax], 0x7b
jmp 0x4cdf14
lea ebx, [0x7488c0]
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.0043c860
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 [0xa918d0]
test edx, edx
jne 0x4ce46e
mov dword [edi], eax
mov ebx, dword [esp + 0xf8]
mov edx, eax
mov eax, ecx
jmp 0x4ce412
call fcn.00451480
jmp 0x4ce461
test ebx, 0x80
je 0x4ce524
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 0x4ce401
nop
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x48]
lea ebx, [ebp + ebx + 5]
cmp ebx, ecx
ja 0x4ce4e9
mov ebp, 0x6c696e28
mov dword [edx + eax], ebp
mov ebp, 0x29
xchg ebp, ebx
mov byte [edx + eax + 4], bl
xchg ebp, ebx
mov dword [edi + 4], ebx
mov dword [edi + 8], ecx
mov ecx, dword [0xa918d0]
test ecx, ecx
jne 0x4ce4e0
mov dword [edi], edx
add esp, 0xe8
ret
mov eax, edx
call fcn.00451480
jmp 0x4ce4d9
mov dword [esp + 0x78], ebx
lea ebp, [0x7488c0]
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.0043c860
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x74]
mov ebx, dword [esp + 0x78]
mov edi, dword [esp + 0xec]
jmp 0x4ce4b2
mov ebp, dword [esp + 0xf4]
mov esi, ebp
jmp 0x4ce48b
lea eax, [0x764780]
mov dword [esp], eax
call fcn.0040a580
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x13
mov eax, dword [0xa918d0]
test eax, eax
jne 0x4ce562
lea eax, [0x7ab3bb]
mov dword [edi], eax
jmp 0x4cf4f3
lea eax, [0x7ab3bb]
call fcn.00451480
jmp 0x4cf4f3
mov edx, eax
mov eax, dword [esp + 0xac]
call fcn.00451480
mov eax, edx
mov edx, dword [esp + 0xac]
jmp 0x4ce3e2
mov dword [esp + 0x94], eax
lea eax, [0x7488c0]
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.0043c860
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x94]
mov ecx, dword [esp + 0x48]
mov ebx, dword [esp + 0x78]
jmp 0x4ce398
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0047cef0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x4ce81d
mov edi, dword [esp + 0xec]
movzx ecx, byte [edi + 0x2c]
test cl, cl
jne 0x4ce68c
nop
mov ecx, dword [edi + 4]
lea edx, [ecx + 5]
mov ebx, dword [edi + 8]
mov ebp, dword [edi]
cmp edx, ebx
ja 0x4ce64d
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 [0xa918d0]
test ecx, ecx
jne 0x4ce641
mov dword [edi], ebp
jmp 0x4cd972
mov eax, ebp
call fcn.00451480
jmp 0x4cd972
mov dword [esp + 0x78], ecx
mov dword [esp + 0x74], edx
lea eax, [0x7488c0]
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.0043c860
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x14]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x74]
mov edi, dword [esp + 0xec]
jmp 0x4ce616
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.00481520
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 + 0x78], ebx
lea ebp, [eax + ebx]
mov dword [esp + 0x74], ebp
mov esi, dword [edx + 8]
mov edi, dword [edx]
cmp ebp, esi
ja 0x4ce7dc
mov dword [esp + 0xac], edi
mov dword [esp + 0x70], esi
lea edx, [edi + ebx]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00451e30
mov eax, dword [esp + 0x74]
mov edi, dword [esp + 0xec]
mov dword [edi + 4], eax
mov ecx, dword [esp + 0x70]
mov dword [edi + 8], ecx
mov edx, dword [0xa918d0]
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x50]
lea ebx, [ebp + ebx + 5]
test edx, edx
jne 0x4ce7c0
mov edx, dword [esp + 0xac]
mov dword [edi], edx
nop
cmp ebx, ecx
ja 0x4ce785
mov ebp, 0x6c696e28
mov dword [edx + eax], ebp
mov ebp, 0x29
xchg ebp, ebx
mov byte [edx + eax + 4], bl
xchg ebp, ebx
mov dword [edi + 4], ebx
mov dword [edi + 8], ecx
mov ecx, dword [0xa918d0]
test ecx, ecx
jne 0x4ce779
mov dword [edi], edx
jmp 0x4cd972
mov eax, edx
call fcn.00451480
jmp 0x4cd972
mov dword [esp + 0x78], ebx
lea ebp, [0x7488c0]
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.0043c860
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x74]
mov ebx, dword [esp + 0x78]
mov edi, dword [esp + 0xec]
jmp 0x4ce74d
mov edx, eax
mov eax, dword [esp + 0xac]
call fcn.00451480
mov eax, edx
mov edx, dword [esp + 0xac]
jmp 0x4ce748
mov dword [esp + 0x98], ecx
lea eax, [0x7488c0]
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.0043c860
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x98]
mov ebx, dword [esp + 0x78]
jmp 0x4ce6f2
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 eax, dword [esp + 0x100]
inc eax
mov dword [esp + 0x14], eax
call fcn.004cd420
jmp 0x4cd972
cmp edx, 0x17
ja 0x4ce9f6
cmp edx, 0x16
jne 0x4cd4dc
test ecx, ecx
je 0x4ce9b5
xor eax, eax
test al, al
je 0x4cde8d
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0047cef0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
nop
mov ebx, eax
and eax, 0x1f
cmp eax, 0x15
ja 0x4ce9a1
cmp eax, 0x11
jne 0x4ce977
mov dword [esp + 0x7c], ebx
nop
mov eax, dword [esp + 0xec]
mov ebp, dword [eax + 4]
lea esi, [ebp + 1]
mov edi, dword [eax]
mov ebx, dword [eax + 8]
cmp esi, ebx
ja 0x4ce907
lea ebx, [ebp + 1]
mov dword [eax + 4], ebx
mov byte [edi + ebp], 0x26
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov eax, dword [esp + 0x7c]
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.004cd420
add esp, 0xe8
ret
mov dword [esp + 0xb0], ecx
mov dword [esp + 0xa4], edx
lea eax, [0x7488c0]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], esi
call fcn.0043c860
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 [0xa918d0]
test edx, edx
jne 0x4ce970
mov dword [edi], eax
mov edx, dword [esp + 0xa4]
mov ebp, ecx
mov ecx, dword [esp + 0xb0]
mov ebx, eax
mov eax, edi
mov edi, ebx
jmp 0x4ce8c7
call fcn.00451480
jmp 0x4ce955
cmp eax, 0x15
je 0x4ce8ac
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xf4]
mov esi, dword [esp + 0xf8]
mov edi, dword [esp + 0xec]
jmp 0x4cde8d
cmp eax, 0x17
je 0x4ce8ac
cmp eax, 0x19
je 0x4ce8ac
jmp 0x4ce980
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0047f8d0
mov eax, dword [esp + 0xc]
test eax, eax
setne al
mov ecx, dword [esp + 0x100]
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xf4]
mov esi, dword [esp + 0xf8]
mov edi, dword [esp + 0xec]
jmp 0x4ce870
cmp edx, 0x18
je 0x4cefb4
cmp edx, 0x19
jne 0x4cefa6
movzx eax, byte [edi + 0x2c]
test al, al
jne 0x4ceea3
mov eax, dword [edi + 4]
lea edx, [eax + 1]
mov ecx, dword [edi + 8]
mov esi, dword [edi]
cmp edx, ecx
ja 0x4cee45
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [esi + eax], 0x7b
lea eax, [esp + 8]
mov dword [esp + 0xa0], eax
xor ecx, ecx
jmp 0x4ceac5
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 + 0x64]
mov dword [esp + 0xc], ebx
call fcn.004ca1e0
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.004cd420
mov eax, dword [esp + 0x64]
lea ecx, [eax + 1]
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xf4]
mov dword [esp + 0x64], ecx
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov eax, dword [esp + 0xf8]
mov dword [esp + 8], eax
call fcn.0047f390
mov eax, dword [esp + 0x64]
cmp dword [esp + 0xc], eax
jle 0x4cedd1
test eax, eax
jle 0x4cedc5
mov edi, dword [esp + 0xec]
movzx ecx, byte [edi + 0x2c]
test cl, cl
je 0x4ced56
nop
mov ecx, dword [edi + 4]
lea edx, [ecx + 2]
mov ebx, dword [edi + 8]
mov ebp, dword [edi]
cmp edx, ebx
ja 0x4ced10
mov esi, 0x202c
mov word [ebp + ecx], si
mov dword [edi + 4], edx
mov dword [edi + 8], ebx
mov ecx, dword [0xa918d0]
test ecx, ecx
jne 0x4ced00
mov dword [edi], ebp
movzx ecx, byte [edi + 0x2b]
test cl, cl
je 0x4cecef
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.00481520
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x2c]
mov dword [esp], ecx
mov ecx, dword [esp + 0x64]
mov dword [esp + 4], ecx
call eax
lea edi, [esp + 0xb4]
mov esi, dword [esp + 0xa0]
call fcn.00451bbe
mov eax, dword [esp + 0xb8]
mov ecx, dword [esp + 0xb4]
test eax, eax
je 0x4cece3
mov dword [esp + 0x40], eax
nop
mov edx, dword [esp + 0xec]
mov ebx, dword [edx + 4]
mov dword [esp + 0x78], ebx
lea ebp, [eax + ebx]
mov dword [esp + 0x74], ebp
mov esi, dword [edx + 8]
mov edi, dword [edx]
cmp ebp, esi
ja 0x4ceca2
mov dword [esp + 0xac], edi
mov dword [esp + 0x70], esi
lea edx, [edi + ebx]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00451e30
mov eax, dword [esp + 0x74]
mov edi, dword [esp + 0xec]
mov dword [edi + 4], eax
mov ecx, dword [esp + 0x70]
mov dword [edi + 8], ecx
mov edx, dword [0xa918d0]
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x40]
lea ebx, [ebp + ebx + 1]
test edx, edx
jne 0x4cec89
mov edx, dword [esp + 0xac]
mov dword [edi], edx
nop
cmp ebx, ecx
ja 0x4cec3c
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [edx + eax], 0x3a
jmp 0x4cea43
lea ebp, [0x7488c0]
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.0043c860
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 [0xa918d0]
test edx, edx
jne 0x4cec82
mov dword [edi], eax
mov edx, eax
mov eax, ecx
jmp 0x4cec2d
call fcn.00451480
jmp 0x4cec7c
mov edx, eax
mov eax, dword [esp + 0xac]
call fcn.00451480
mov eax, edx
mov edx, dword [esp + 0xac]
jmp 0x4cec28
mov dword [esp + 0x8c], ecx
lea eax, [0x7488c0]
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.0043c860
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x78]
jmp 0x4cebd6
mov edi, dword [esp + 0xec]
jmp 0x4cea43
movzx ecx, byte [edi + 0x2c]
test cl, cl
jne 0x4ceb49
jmp 0x4cea43
mov ecx, eax
mov eax, ebp
call fcn.00451480
mov eax, ecx
jmp 0x4ceb3d
mov dword [esp + 0x78], ecx
mov dword [esp + 0x74], edx
lea eax, [0x7488c0]
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.0043c860
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x14]
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x74]
mov edi, dword [esp + 0xec]
jmp 0x4ceb1d
nop
mov ecx, dword [edi + 4]
lea edx, [ecx + 1]
mov ebx, dword [edi + 8]
mov ebp, dword [edi]
cmp edx, ebx
ja 0x4ced76
lea edx, [ecx + 1]
mov dword [edi + 4], edx
mov byte [ebp + ecx], 0x20
jmp 0x4ceb3d
lea eax, [0x7488c0]
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.0043c860
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 [0xa918d0]
test edx, edx
jne 0x4cedbe
mov dword [edi], eax
mov ebp, eax
mov eax, dword [esp + 0x64]
jmp 0x4ced66
call fcn.00451480
jmp 0x4cedb6
mov edi, dword [esp + 0xec]
jmp 0x4ceb3d
nop
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
ja 0x4cedf8
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebp + ecx], 0x7d
jmp 0x4cd972
lea eax, [0x7488c0]
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.0043c860
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 [0xa918d0]
test edx, edx
jne 0x4cee3e
mov dword [edi], eax
mov ebp, eax
mov eax, edi
jmp 0x4cede8
call fcn.00451480
jmp 0x4cee38
lea ebx, [0x7488c0]
mov dword [esp], ebx
mov dword [esp + 4], esi
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
call fcn.0043c860
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 [0xa918d0]
test edx, edx
jne 0x4cee9c
mov dword [edi], eax
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xf4]
mov esi, eax
mov eax, ecx
jmp 0x4cea27
call fcn.00451480
jmp 0x4cee85
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.00481520
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, [ebx + eax]
mov dword [esp + 0x78], ebp
mov esi, dword [edx + 8]
mov edi, dword [edx]
cmp ebp, esi
ja 0x4cef5d
mov dword [esp + 0xac], 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.00451e30
mov eax, dword [esp + 0x78]
mov edi, dword [esp + 0xec]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x74]
mov dword [edi + 8], eax
mov eax, dword [0xa918d0]
test eax, eax
jne 0x4cef4f
mov eax, dword [esp + 0xac]
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 0x4cea14
mov eax, dword [esp + 0xac]
call fcn.00451480
jmp 0x4cef2e
mov dword [esp + 0x4c], eax
mov dword [esp + 0x74], ebx
mov dword [esp + 0x90], ecx
lea eax, [0x7488c0]
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.0043c860
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x90]
mov ebx, dword [esp + 0x74]
jmp 0x4ceee8
cmp edx, 0x1a
je 0x4cde8d
jmp 0x4cdeb1
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.00481230
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0xec]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov eax, dword [esp + 0xfc]
mov dword [esp + 0xc], eax
call fcn.004cb2b0
jmp 0x4cd972
cmp edx, 0xc
ja 0x4cf320
cmp edx, 1
ja 0x4cf19f
test edx, edx
jne 0x4cf167
test ecx, ecx
jne 0x4cf0c1
nop
mov eax, dword [edi + 4]
lea ecx, [eax + 0x17]
mov dword [esp + 0x78], ecx
mov edx, dword [edi + 8]
mov ebx, dword [edi]
cmp ecx, edx
ja 0x4cf08e
mov dword [esp + 0x74], edx
mov dword [esp + 0xac], ebx
add eax, ebx
mov dword [esp], eax
lea eax, [0x7ace2d]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x17
call fcn.00451e30
mov eax, dword [esp + 0x78]
mov edi, dword [esp + 0xec]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x74]
mov dword [edi + 8], eax
mov eax, dword [0xa918d0]
test eax, eax
jne 0x4cf07d
mov eax, dword [esp + 0xac]
mov dword [edi], eax
jmp 0x4cd972
mov eax, dword [esp + 0xac]
call fcn.00451480
jmp 0x4cd972
mov dword [esp + 0x74], eax
lea ebp, [0x7488c0]
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.0043c860
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x74]
jmp 0x4cf029
mov ecx, dword [esp + 0xfc]
cmp ecx, 0x76
jne 0x4cf156
nop
mov ecx, dword [edi + 4]
lea edx, [ecx + 5]
mov ebx, dword [edi]
mov ebp, dword [edi + 8]
cmp edx, ebp
ja 0x4cf117
mov esi, 0x6c696e3c
mov dword [ebx + ecx], esi
mov esi, 0x3e
xchg esi, eax
mov byte [ebx + ecx + 4], al
xchg esi, eax
mov dword [edi + 4], edx
mov dword [edi + 8], ebp
mov ecx, dword [0xa918d0]
test ecx, ecx
jne 0x4cf10b
mov dword [edi], ebx
jmp 0x4cd972
mov eax, ebx
call fcn.00451480
jmp 0x4cd972
mov dword [esp + 0x78], edx
mov dword [esp + 0x74], ecx
lea eax, [0x7488c0]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edx
call fcn.0043c860
mov ebp, dword [esp + 0x1c]
mov ebx, dword [esp + 0x14]
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x78]
mov edi, dword [esp + 0xec]
jmp 0x4cf0e1
mov dword [esp], edi
mov dword [esp + 4], ecx
call fcn.004ca600
jmp 0x4cd972
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0047ad50
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.004cab30
jmp 0x4cd972
lea eax, [edx - 2]
cmp eax, 4
ja 0x4cf259
cmp edx, 3
ja 0x4cf1ed
cmp edx, 2
jne 0x4cf1e2
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.004cac20
jmp 0x4cd972
movsx eax, byte [ebp]
mov ecx, eax
sar eax, 0x1f
jmp 0x4cf1bd
cmp edx, 4
jne 0x4cf1fd
movsx eax, word [ebp]
mov ecx, eax
sar eax, 0x1f
jmp 0x4cf1bd
cmp edx, 5
jne 0x4cf20c
mov eax, dword [ebp]
mov ecx, eax
sar eax, 0x1f
jmp 0x4cf1bd
cmp edx, 6
jne 0x4cf219
mov ecx, dword [ebp]
mov eax, dword [ebp + 4]
jmp 0x4cf1bd
lea eax, [0x764780]
mov dword [esp], eax
call fcn.0040a580
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x11
mov eax, dword [0xa918d0]
test eax, eax
jne 0x4cf249
lea eax, [0x7aa3e1]
mov dword [edi], eax
jmp 0x4cf525
lea eax, [0x7aa3e1]
call fcn.00451480
jmp 0x4cf525
lea eax, [edx - 7]
cmp eax, 5
ja 0x4cdeb1
cmp edx, 9
ja 0x4cf2f7
cmp edx, 7
jne 0x4cf29d
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.004cac20
jmp 0x4cd972
cmp edx, 8
jne 0x4cf2aa
movzx eax, byte [ebp]
xor ecx, ecx
jmp 0x4cf278
cmp edx, 9
jne 0x4cf2b7
movzx eax, word [ebp]
xor ecx, ecx
jmp 0x4cf278
lea eax, [0x764780]
mov dword [esp], eax
call fcn.0040a580
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x12
mov eax, dword [0xa918d0]
test eax, eax
jne 0x4cf2e7
lea eax, [0x7aaae3]
mov dword [edi], eax
jmp 0x4cf50c
lea eax, [0x7aaae3]
call fcn.00451480
jmp 0x4cf50c
cmp edx, 0xa
jne 0x4cf306
mov eax, dword [ebp]
xor ecx, ecx
jmp 0x4cf278
cmp edx, 0xb
jne 0x4cf316
mov eax, dword [ebp]
mov ecx, dword [ebp + 4]
jmp 0x4cf278
mov eax, dword [ebp]
xor ecx, ecx
jmp 0x4cf278
cmp edx, 0xe
ja 0x4cf384
cmp edx, 0xd
jne 0x4cf359
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.004caf60
jmp 0x4cd972
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.004caf60
jmp 0x4cd972
cmp edx, 0xf
jne 0x4cf3c7
movss xmm0, dword [ebp + 4]
movss xmm1, dword [ebp]
mov dword [esp], edi
cvtss2sd xmm1, xmm1
movsd qword [esp + 4], xmm1
cvtss2sd xmm0, xmm0
movsd qword [esp + 0xc], xmm0
mov dword [esp + 0x14], 0x40
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x18], eax
call fcn.004cb0d0
jmp 0x4cd972
movsd xmm0, qword [ebp + 8]
movsd xmm1, qword [ebp]
mov dword [esp], edi
movsd qword [esp + 4], xmm1
movsd qword [esp + 0xc], xmm0
mov dword [esp + 0x14], pe_nt_image_headers32
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x18], eax
call fcn.004cb0d0
jmp 0x4cd972
lea esi, [edi + 0x14]
mov eax, edi
mov edi, esi
mov ebx, eax
mov eax, dword [esp + 0xf0]
call fcn.00451480
lea edi, [ebx + 0x18]
mov ebp, eax
mov eax, dword [esp + 0xf4]
call fcn.00451480
mov ebx, ebp
mov ebp, eax
mov edi, dword [esp + 0xec]
jmp 0x4cd4ae
lea ebx, [edi + 0x10]
mov eax, edi
mov edi, ebx
mov ebp, eax
xor eax, eax
call fcn.00451480
mov edi, ebp
jmp 0x4cd489
mov eax, dword [esp + 0xf0]
mov dword [esp], eax
mov ecx, dword [esp + 0xf4]
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov byte [esp + 0xc], 1
call fcn.0047db50
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0xec]
mov dword [edx + 0xc], eax
mov eax, dword [0xa918d0]
test eax, eax
jne 0x4cf4c2
mov dword [edx + 0x10], ecx
mov dword [esp], edx
mov eax, dword [esp + 0xfc]
mov dword [esp + 4], eax
call fcn.004cc520
movzx eax, byte [esp + 8]
test al, al
jne 0x4cf4bb
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0xf8]
jmp 0x4cd466
add esp, 0xe8
ret
lea edi, [edx + 0x10]
mov eax, ecx
call fcn.00451480
jmp 0x4cf48c
mov edx, dword [esp + 0xf8]
jmp 0x4cd466
mov eax, dword [esp + 0x7c]
mov dword [edi + 8], eax
lea eax, [0x7535a0]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.0042af30
mov eax, dword [esp + 0x7c]
mov dword [edi + 8], eax
lea eax, [0x7535a0]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.0042af30
mov eax, dword [esp + 0x7c]
mov dword [edi + 8], eax
lea eax, [0x7535a0]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.0042af30
mov eax, dword [esp + 0x7c]
mov dword [edi + 8], eax
lea eax, [0x7535a0]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.0042af30
call fcn.00451500
mov eax, ebp
call fcn.00451500
nop
call fcn.0044fc40
jmp fcn.004cd420