Function at 0x4cc610
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 0x4ce73b
sub esp, 0xe8
mov ecx, dword [esp + 0x100]
test ecx, ecx
jle 0x4ce6be
mov edx, dword [esp + 0xf8]
test edx, edx
je 0x4cc656
test edx, 0x60
je 0x4ce63a
mov edi, dword [esp + 0xec]
mov dword [edi + 0xc], 0
mov ebx, dword [0xc6be00]
test ebx, ebx
jne 0x4ce623
mov dword [edi + 0x10], 0
mov dword [edi + 0x1c], edx
mov ebx, dword [0xc6be00]
test ebx, ebx
jne 0x4ce5ed
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 0x4ce1e3
cmp edx, 0x15
ja 0x4cda44
cmp edx, 0x13
ja 0x4cd0ba
cmp edx, 0x11
jne 0x4cd075
mov eax, dword [esp + 0xfc]
cmp eax, 0x71
jg 0x4cd05e
cmp eax, 0x58
jne 0x4cd050
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004831d0
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 0x4cc9e3
mov eax, dword [esp + 0x7c]
cmp eax, 0x17
je 0x4cc9ad
mov eax, dword [esp + 0xf8]
test eax, 0x100
jne 0x4cc92d
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.004800f0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x6c], eax
lea ecx, [0x843ec0]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.0043d110
mov eax, dword [esp + 0xc]
mov dword [esp + 0xb0], eax
xor ecx, ecx
jmp 0x4cc7a6
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 0x4cc8ba
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.0047f2d0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
nop
and eax, 0x1f
mov dword [esp + 0x7c], eax
cmp eax, 9
ja 0x4cc878
cmp eax, 7
jne 0x4cc810
mov edx, dword [ecx]
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x6c]
cmp eax, ecx
jb 0x4cc795
jmp 0x4ce72e
cmp eax, 8
jne 0x4cc824
movzx edx, byte [ecx]
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x6c]
cmp eax, ecx
jmp 0x4cc809
cmp eax, 9
jne 0x4cc838
movzx edx, word [ecx]
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x6c]
cmp eax, ecx
jmp 0x4cc809
lea eax, [0x86aea0]
mov dword [esp], eax
call fcn.0040a800
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x12
mov eax, dword [0xc6be00]
test eax, eax
jne 0x4cc868
lea eax, [0x8c6285]
mov dword [edi], eax
jmp 0x4ce6ca
lea eax, [0x8c6285]
call fcn.00451ff0
jmp 0x4ce6ca
cmp eax, 0xa
jne 0x4cc88e
mov edx, dword [ecx]
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x6c]
cmp eax, ecx
jmp 0x4cc809
cmp eax, 0xb
jne 0x4cc8a4
mov edx, dword [ecx]
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x6c]
cmp eax, ecx
jmp 0x4cc809
cmp eax, 0xc
jne 0x4cc838
mov edx, dword [ecx]
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x6c]
cmp eax, ecx
jmp 0x4cc809
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.004ca530
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.004800f0
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.00482ac0
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.0047c940
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0xc]
jmp 0x4cc8bc
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.0047c940
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0xc]
jmp 0x4cc8bc
mov eax, dword [esp + 0xec]
movzx ecx, byte [eax + 0x2c]
test cl, cl
jne 0x4ccc06
nop
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax + 8]
mov ebp, dword [eax]
cmp edx, ebx
ja 0x4ccbb6
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebp + ecx], 0x5b
xor ecx, ecx
jmp 0x4cca89
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.0047f2d0
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.004cc610
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.004800f0
mov eax, dword [esp + 0x54]
cmp dword [esp + 0xc], eax
jle 0x4ccb41
test eax, eax
jle 0x4cca19
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 0x4ccaee
lea ebx, [edx + 1]
mov dword [ecx + 4], ebx
mov byte [esi + edx], 0x20
jmp 0x4cca19
lea eax, [0x843ec0]
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.0043d1d0
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 [0xc6be00]
test edx, edx
jne 0x4ccb3a
mov dword [edi], eax
mov edx, ecx
mov esi, eax
mov eax, dword [esp + 0x54]
mov ecx, edi
jmp 0x4ccadf
call fcn.00451ff0
jmp 0x4ccb2e
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 0x4ccb69
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebx + ecx], 0x5d
add esp, 0xe8
ret
lea eax, [0x843ec0]
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.0043d1d0
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 [0xc6be00]
test edx, edx
jne 0x4ccbaf
mov dword [edi], eax
mov ebx, eax
mov eax, edi
jmp 0x4ccb58
call fcn.00451ff0
jmp 0x4ccba9
lea eax, [0x843ec0]
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.0043d1d0
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 [0xc6be00]
test edx, edx
jne 0x4ccbff
mov dword [edi], eax
mov ebp, eax
mov eax, edi
jmp 0x4cca0a
call fcn.00451ff0
jmp 0x4ccbf6
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.004831d0
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 0x4cd00f
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.004529a0
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 [0xc6be00]
test edx, edx
jne 0x4ccff3
mov edx, dword [esp + 0xac]
mov dword [edi], edx
mov ebx, dword [esp + 0x7c]
cmp ebx, 0x17
jne 0x4ccfe7
add ebx, 0xffffffeb
cmp ebx, 1
ja 0x4ccfc6
mov ebx, dword [esp + 0xf8]
test ebx, 0x200
je 0x4ccf96
xor ebp, ebp
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x4ccf13
nop
mov ebp, dword [esp + 0x78]
mov esi, dword [esp + 0x44]
lea ebp, [esi + ebp + 1]
cmp ebp, ecx
ja 0x4ccebc
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [edx + eax], 0x7b
xor eax, eax
jmp 0x4ccd86
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.0047f2d0
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.004cc610
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.004800f0
mov eax, dword [esp + 0x58]
cmp dword [esp + 0xc], eax
jle 0x4cce49
test eax, eax
jle 0x4ccd11
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 0x4cce06
mov esi, 0x202c
mov word [ebp + ecx], si
mov dword [edi + 4], edx
mov dword [edi + 8], ebx
mov ecx, dword [0xc6be00]
test ecx, ecx
jne 0x4ccdf6
mov dword [edi], ebp
jmp 0x4ccd11
mov ecx, eax
mov eax, ebp
call fcn.00451ff0
mov eax, ecx
jmp 0x4ccd11
mov dword [esp + 0x78], ecx
mov dword [esp + 0x74], edx
lea eax, [0x843ec0]
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.0043d1d0
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 0x4ccdd5
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 0x4cce6f
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebx + ecx], 0x7d
jmp 0x4ccb62
lea eax, [0x843ec0]
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.0043d1d0
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 [0xc6be00]
test edx, edx
jne 0x4cceb5
mov dword [edi], eax
mov ebx, eax
mov eax, edi
jmp 0x4cce60
call fcn.00451ff0
jmp 0x4cceaf
lea ebx, [0x843ec0]
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.0043d1d0
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 [0xc6be00]
test edx, edx
jne 0x4ccf0c
mov dword [edi], eax
mov ebx, dword [esp + 0xf8]
mov edx, eax
mov eax, ecx
jmp 0x4ccd03
call fcn.00451ff0
jmp 0x4ccefc
nop
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x44]
lea ebx, [ebp + ebx + 5]
cmp ebx, ecx
ja 0x4ccf5b
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 [0xc6be00]
test ecx, ecx
jne 0x4ccf52
mov dword [edi], edx
add esp, 0xe8
ret
mov eax, edx
call fcn.00451ff0
jmp 0x4ccf4b
mov dword [esp + 0x78], ebx
lea ebp, [0x843ec0]
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.0043d1d0
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 0x4ccf24
test ebx, 0x80
je 0x4ccfbb
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 0x4ccce4
mov ebp, dword [esp + 0xf4]
mov esi, ebp
jmp 0x4ccfa8
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 0x4ccce4
mov ebx, dword [esp + 0xf8]
jmp 0x4cccee
mov edx, eax
mov eax, dword [esp + 0xac]
call fcn.00451ff0
mov eax, edx
mov edx, dword [esp + 0xac]
jmp 0x4cccb6
mov dword [esp + 0x88], ecx
lea eax, [0x843ec0]
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.0043d1d0
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 0x4ccc6c
cmp eax, 0x71
je 0x4cc6e5
jmp 0x4cc9e3
cmp eax, 0x73
je 0x4cc6e5
cmp eax, 0x78
je 0x4cc6e5
jmp 0x4cc9e3
lea eax, [edx - 0x12]
cmp eax, 1
ja 0x4cd0a1
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.004cac20
jmp 0x4ccb62
mov dword [esp], edi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], esi
call fcn.004c9470
jmp 0x4ccb62
cmp edx, 0x14
je 0x4cd7bf
movzx edx, byte [edi + 0x2c]
test dl, dl
jne 0x4cd537
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 0x4cd4e7
mov ebx, 0x5b70616d
mov dword [ebp + edx], ebx
mov dword [edi + 4], ecx
mov dword [edi + 8], esi
mov ecx, dword [0xc6be00]
test ecx, ecx
jne 0x4cd4d7
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.0048fb50
mov eax, dword [esp + 0xc]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
test ecx, ecx
jle 0x4cd2a2
mov dword [esp + 0x84], eax
mov dword [esp + 0x78], ecx
xor ebx, ebx
jmp 0x4cd15c
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 0x4cd4cb
mov ecx, dword [esp + 0xec]
movzx ebx, byte [ecx + 0x2c]
test bl, bl
je 0x4cd440
nop
mov ebx, dword [ecx + 4]
lea ebp, [ebx + 2]
mov esi, dword [ecx]
mov edx, dword [ecx + 8]
cmp ebp, edx
ja 0x4cd3f0
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 [0xc6be00]
test edx, edx
jne 0x4cd3da
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.004cc610
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 0x4cd38a
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 0x4ce733
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.004cc610
mov eax, dword [esp + 0x60]
inc eax
mov ecx, dword [esp + 0x78]
cmp eax, ecx
jl 0x4cd149
mov eax, dword [esp + 0xec]
movzx ecx, byte [eax + 0x2c]
test cl, cl
je 0x4cd31d
nop
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
cmp edx, ebp
ja 0x4cd2d0
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebx + ecx], 0x7d
jmp 0x4ccb62
lea eax, [0x843ec0]
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.0043d1d0
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 [0xc6be00]
test edx, edx
jne 0x4cd316
mov dword [edi], eax
mov ebx, eax
mov eax, edi
jmp 0x4cd2c1
call fcn.00451ff0
jmp 0x4cd310
nop
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax + 8]
mov ebp, dword [eax]
cmp edx, ebx
ja 0x4cd33d
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebp + ecx], 0x5d
jmp 0x4ccb62
lea eax, [0x843ec0]
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.0043d1d0
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 [0xc6be00]
test edx, edx
jne 0x4cd383
mov dword [edi], eax
mov ebp, eax
mov eax, edi
jmp 0x4cd32d
call fcn.00451ff0
jmp 0x4cd37d
lea eax, [0x843ec0]
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.0043d1d0
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 [0xc6be00]
test edx, edx
jne 0x4cd3d3
mov dword [edi], eax
mov ebp, eax
mov eax, edi
jmp 0x4cd237
call fcn.00451ff0
jmp 0x4cd3ca
mov edx, edi
mov edi, ecx
mov ebx, eax
mov eax, esi
call fcn.00451ff0
mov eax, ebx
mov edi, edx
jmp 0x4cd1d9
mov dword [esp + 0x74], ebp
mov dword [esp + 0x70], ebx
lea eax, [0x843ec0]
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.0043d1d0
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 0x4cd1b2
nop
mov ebx, dword [ecx + 4]
lea edi, [ebx + 1]
mov eax, dword [ecx + 8]
mov ebp, dword [ecx]
cmp edi, eax
ja 0x4cd46e
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 0x4cd1d9
lea ecx, [0x843ec0]
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.0043d1d0
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 [0xc6be00]
test edx, edx
jne 0x4cd4c4
mov dword [edi], eax
mov edx, dword [esp + 0xa4]
mov esi, dword [esp + 0xb0]
mov ebx, ecx
mov ebp, eax
mov ecx, edi
jmp 0x4cd450
call fcn.00451ff0
jmp 0x4cd4ae
mov ecx, dword [esp + 0xec]
jmp 0x4cd1d9
mov ecx, eax
mov eax, ebp
call fcn.00451ff0
mov eax, ecx
jmp 0x4cd104
mov dword [esp + 0x78], ecx
mov dword [esp + 0x74], edx
lea eax, [0x843ec0]
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.0043d1d0
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 0x4cd0e5
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004831d0
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 0x4cd77e
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.004529a0
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 [0xc6be00]
test edx, edx
jne 0x4cd762
mov edx, dword [esp + 0xac]
mov dword [edi], edx
mov ebx, dword [esp + 0x7c]
lea ebp, [ebx - 0x15]
cmp ebp, 1
ja 0x4cd722
mov ebx, dword [esp + 0xf8]
test ebx, 0x200
je 0x4cd665
nop
mov ebp, dword [esp + 0x78]
mov esi, dword [esp + 0x48]
lea ebp, [esi + ebp + 1]
cmp ebp, ecx
ja 0x4cd611
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [edx + eax], 0x7b
jmp 0x4cd104
lea ebx, [0x843ec0]
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.0043d1d0
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 [0xc6be00]
test edx, edx
jne 0x4cd65e
mov dword [edi], eax
mov ebx, dword [esp + 0xf8]
mov edx, eax
mov eax, ecx
jmp 0x4cd602
call fcn.00451ff0
jmp 0x4cd651
test ebx, 0x80
je 0x4cd714
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 0x4cd5f1
nop
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x48]
lea ebx, [ebp + ebx + 5]
cmp ebx, ecx
ja 0x4cd6d9
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 [0xc6be00]
test ecx, ecx
jne 0x4cd6d0
mov dword [edi], edx
add esp, 0xe8
ret
mov eax, edx
call fcn.00451ff0
jmp 0x4cd6c9
mov dword [esp + 0x78], ebx
lea ebp, [0x843ec0]
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.0043d1d0
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 0x4cd6a2
mov ebp, dword [esp + 0xf4]
mov esi, ebp
jmp 0x4cd67b
lea eax, [0x86aea0]
mov dword [esp], eax
call fcn.0040a800
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x13
mov eax, dword [0xc6be00]
test eax, eax
jne 0x4cd752
lea eax, [0x8c6ec4]
mov dword [edi], eax
jmp 0x4ce6e3
lea eax, [0x8c6ec4]
call fcn.00451ff0
jmp 0x4ce6e3
mov edx, eax
mov eax, dword [esp + 0xac]
call fcn.00451ff0
mov eax, edx
mov edx, dword [esp + 0xac]
jmp 0x4cd5d2
mov dword [esp + 0x94], eax
lea eax, [0x843ec0]
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.0043d1d0
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 0x4cd588
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0047ea30
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc]
test eax, eax
jne 0x4cda0d
mov edi, dword [esp + 0xec]
movzx ecx, byte [edi + 0x2c]
test cl, cl
jne 0x4cd87c
nop
mov ecx, dword [edi + 4]
lea edx, [ecx + 5]
mov ebx, dword [edi + 8]
mov ebp, dword [edi]
cmp edx, ebx
ja 0x4cd83d
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 [0xc6be00]
test ecx, ecx
jne 0x4cd831
mov dword [edi], ebp
jmp 0x4ccb62
mov eax, ebp
call fcn.00451ff0
jmp 0x4ccb62
mov dword [esp + 0x78], ecx
mov dword [esp + 0x74], edx
lea eax, [0x843ec0]
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.0043d1d0
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 0x4cd806
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.004831d0
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 0x4cd9cc
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.004529a0
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 [0xc6be00]
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x50]
lea ebx, [ebp + ebx + 5]
test edx, edx
jne 0x4cd9b0
mov edx, dword [esp + 0xac]
mov dword [edi], edx
nop
cmp ebx, ecx
ja 0x4cd975
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 [0xc6be00]
test ecx, ecx
jne 0x4cd969
mov dword [edi], edx
jmp 0x4ccb62
mov eax, edx
call fcn.00451ff0
jmp 0x4ccb62
mov dword [esp + 0x78], ebx
lea ebp, [0x843ec0]
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.0043d1d0
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 0x4cd93d
mov edx, eax
mov eax, dword [esp + 0xac]
call fcn.00451ff0
mov eax, edx
mov edx, dword [esp + 0xac]
jmp 0x4cd938
mov dword [esp + 0x98], ecx
lea eax, [0x843ec0]
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.0043d1d0
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 0x4cd8e2
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.004cc610
jmp 0x4ccb62
cmp edx, 0x17
ja 0x4cdbe6
cmp edx, 0x16
jne 0x4cc6cc
test ecx, ecx
je 0x4cdba5
xor eax, eax
test al, al
je 0x4cd07d
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0047ea30
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 0x4cdb91
cmp eax, 0x11
jne 0x4cdb67
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 0x4cdaf7
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.004cc610
add esp, 0xe8
ret
mov dword [esp + 0xb0], ecx
mov dword [esp + 0xa4], edx
lea eax, [0x843ec0]
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.0043d1d0
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 [0xc6be00]
test edx, edx
jne 0x4cdb60
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 0x4cdab7
call fcn.00451ff0
jmp 0x4cdb45
cmp eax, 0x15
je 0x4cda9c
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xf4]
mov esi, dword [esp + 0xf8]
mov edi, dword [esp + 0xec]
jmp 0x4cd07d
cmp eax, 0x17
je 0x4cda9c
cmp eax, 0x19
je 0x4cda9c
jmp 0x4cdb70
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.00481560
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 0x4cda60
cmp edx, 0x18
je 0x4ce1a4
cmp edx, 0x19
jne 0x4ce196
movzx eax, byte [edi + 0x2c]
test al, al
jne 0x4ce093
mov eax, dword [edi + 4]
lea edx, [eax + 1]
mov ecx, dword [edi + 8]
mov esi, dword [edi]
cmp edx, ecx
ja 0x4ce035
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 0x4cdcb5
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.004c92c0
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.004cc610
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.00480f40
mov eax, dword [esp + 0x64]
cmp dword [esp + 0xc], eax
jle 0x4cdfc1
test eax, eax
jle 0x4cdfb5
mov edi, dword [esp + 0xec]
movzx ecx, byte [edi + 0x2c]
test cl, cl
je 0x4cdf46
nop
mov ecx, dword [edi + 4]
lea edx, [ecx + 2]
mov ebx, dword [edi + 8]
mov ebp, dword [edi]
cmp edx, ebx
ja 0x4cdf00
mov esi, 0x202c
mov word [ebp + ecx], si
mov dword [edi + 4], edx
mov dword [edi + 8], ebx
mov ecx, dword [0xc6be00]
test ecx, ecx
jne 0x4cdef0
mov dword [edi], ebp
movzx ecx, byte [edi + 0x2b]
test cl, cl
je 0x4cdedf
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.004831d0
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.0045272e
mov eax, dword [esp + 0xb8]
mov ecx, dword [esp + 0xb4]
test eax, eax
je 0x4cded3
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 0x4cde92
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.004529a0
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 [0xc6be00]
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x40]
lea ebx, [ebp + ebx + 1]
test edx, edx
jne 0x4cde79
mov edx, dword [esp + 0xac]
mov dword [edi], edx
nop
cmp ebx, ecx
ja 0x4cde2c
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [edx + eax], 0x3a
jmp 0x4cdc33
lea ebp, [0x843ec0]
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.0043d1d0
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 [0xc6be00]
test edx, edx
jne 0x4cde72
mov dword [edi], eax
mov edx, eax
mov eax, ecx
jmp 0x4cde1d
call fcn.00451ff0
jmp 0x4cde6c
mov edx, eax
mov eax, dword [esp + 0xac]
call fcn.00451ff0
mov eax, edx
mov edx, dword [esp + 0xac]
jmp 0x4cde18
mov dword [esp + 0x8c], ecx
lea eax, [0x843ec0]
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.0043d1d0
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 0x4cddc6
mov edi, dword [esp + 0xec]
jmp 0x4cdc33
movzx ecx, byte [edi + 0x2c]
test cl, cl
jne 0x4cdd39
jmp 0x4cdc33
mov ecx, eax
mov eax, ebp
call fcn.00451ff0
mov eax, ecx
jmp 0x4cdd2d
mov dword [esp + 0x78], ecx
mov dword [esp + 0x74], edx
lea eax, [0x843ec0]
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.0043d1d0
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 0x4cdd0d
nop
mov ecx, dword [edi + 4]
lea edx, [ecx + 1]
mov ebx, dword [edi + 8]
mov ebp, dword [edi]
cmp edx, ebx
ja 0x4cdf66
lea edx, [ecx + 1]
mov dword [edi + 4], edx
mov byte [ebp + ecx], 0x20
jmp 0x4cdd2d
lea eax, [0x843ec0]
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.0043d1d0
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 [0xc6be00]
test edx, edx
jne 0x4cdfae
mov dword [edi], eax
mov ebp, eax
mov eax, dword [esp + 0x64]
jmp 0x4cdf56
call fcn.00451ff0
jmp 0x4cdfa6
mov edi, dword [esp + 0xec]
jmp 0x4cdd2d
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 0x4cdfe8
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebp + ecx], 0x7d
jmp 0x4ccb62
lea eax, [0x843ec0]
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.0043d1d0
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 [0xc6be00]
test edx, edx
jne 0x4ce02e
mov dword [edi], eax
mov ebp, eax
mov eax, edi
jmp 0x4cdfd8
call fcn.00451ff0
jmp 0x4ce028
lea ebx, [0x843ec0]
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.0043d1d0
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 [0xc6be00]
test edx, edx
jne 0x4ce08c
mov dword [edi], eax
mov ebx, dword [esp + 0xf0]
mov ebp, dword [esp + 0xf4]
mov esi, eax
mov eax, ecx
jmp 0x4cdc17
call fcn.00451ff0
jmp 0x4ce075
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004831d0
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 0x4ce14d
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.004529a0
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 [0xc6be00]
test eax, eax
jne 0x4ce13f
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 0x4cdc04
mov eax, dword [esp + 0xac]
call fcn.00451ff0
jmp 0x4ce11e
mov dword [esp + 0x4c], eax
mov dword [esp + 0x74], ebx
mov dword [esp + 0x90], ecx
lea eax, [0x843ec0]
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.0043d1d0
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 0x4ce0d8
cmp edx, 0x1a
je 0x4cd07d
jmp 0x4cd0a1
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.00482ee0
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.004ca390
jmp 0x4ccb62
cmp edx, 0xc
ja 0x4ce510
cmp edx, 1
ja 0x4ce38f
test edx, edx
jne 0x4ce357
test ecx, ecx
jne 0x4ce2b1
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 0x4ce27e
mov dword [esp + 0x74], edx
mov dword [esp + 0xac], ebx
add eax, ebx
mov dword [esp], eax
lea eax, [0x8c92f8]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x17
call fcn.004529a0
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 [0xc6be00]
test eax, eax
jne 0x4ce26d
mov eax, dword [esp + 0xac]
mov dword [edi], eax
jmp 0x4ccb62
mov eax, dword [esp + 0xac]
call fcn.00451ff0
jmp 0x4ccb62
mov dword [esp + 0x74], eax
lea ebp, [0x843ec0]
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.0043d1d0
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x74]
jmp 0x4ce219
mov ecx, dword [esp + 0xfc]
cmp ecx, 0x76
jne 0x4ce346
nop
mov ecx, dword [edi + 4]
lea edx, [ecx + 5]
mov ebx, dword [edi]
mov ebp, dword [edi + 8]
cmp edx, ebp
ja 0x4ce307
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 [0xc6be00]
test ecx, ecx
jne 0x4ce2fb
mov dword [edi], ebx
jmp 0x4ccb62
mov eax, ebx
call fcn.00451ff0
jmp 0x4ccb62
mov dword [esp + 0x78], edx
mov dword [esp + 0x74], ecx
lea eax, [0x843ec0]
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.0043d1d0
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 0x4ce2d1
mov dword [esp], edi
mov dword [esp + 4], ecx
call fcn.004c96e0
jmp 0x4ccb62
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.0047c890
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.004c9c10
jmp 0x4ccb62
lea eax, [edx - 2]
cmp eax, 4
ja 0x4ce449
cmp edx, 3
ja 0x4ce3dd
cmp edx, 2
jne 0x4ce3d2
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.004c9d00
jmp 0x4ccb62
movsx eax, byte [ebp]
mov ecx, eax
sar eax, 0x1f
jmp 0x4ce3ad
cmp edx, 4
jne 0x4ce3ed
movsx eax, word [ebp]
mov ecx, eax
sar eax, 0x1f
jmp 0x4ce3ad
cmp edx, 5
jne 0x4ce3fc
mov eax, dword [ebp]
mov ecx, eax
sar eax, 0x1f
jmp 0x4ce3ad
cmp edx, 6
jne 0x4ce409
mov ecx, dword [ebp]
mov eax, dword [ebp + 4]
jmp 0x4ce3ad
lea eax, [0x86aea0]
mov dword [esp], eax
call fcn.0040a800
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x11
mov eax, dword [0xc6be00]
test eax, eax
jne 0x4ce439
lea eax, [0x8c587a]
mov dword [edi], eax
jmp 0x4ce715
lea eax, [0x8c587a]
call fcn.00451ff0
jmp 0x4ce715
lea eax, [edx - 7]
cmp eax, 5
ja 0x4cd0a1
cmp edx, 9
ja 0x4ce4e7
cmp edx, 7
jne 0x4ce48d
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.004c9d00
jmp 0x4ccb62
cmp edx, 8
jne 0x4ce49a
movzx eax, byte [ebp]
xor ecx, ecx
jmp 0x4ce468
cmp edx, 9
jne 0x4ce4a7
movzx eax, word [ebp]
xor ecx, ecx
jmp 0x4ce468
lea eax, [0x86aea0]
mov dword [esp], eax
call fcn.0040a800
mov edi, dword [esp + 4]
mov dword [edi + 4], 0x12
mov eax, dword [0xc6be00]
test eax, eax
jne 0x4ce4d7
lea eax, [0x8c6285]
mov dword [edi], eax
jmp 0x4ce6fc
lea eax, [0x8c6285]
call fcn.00451ff0
jmp 0x4ce6fc
cmp edx, 0xa
jne 0x4ce4f6
mov eax, dword [ebp]
xor ecx, ecx
jmp 0x4ce468
cmp edx, 0xb
jne 0x4ce506
mov eax, dword [ebp]
mov ecx, dword [ebp + 4]
jmp 0x4ce468
mov eax, dword [ebp]
xor ecx, ecx
jmp 0x4ce468
cmp edx, 0xe
ja 0x4ce574
cmp edx, 0xd
jne 0x4ce549
fld dword [ebp]
mov dword [esp], edi
fld st(0)
fstp st(1)
fld st(0)
fstp qword [esp + 4]
mov dword [esp + 0xc], 0x20
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
fstp st(0)
call fcn.004ca040
jmp 0x4ccb62
fld qword [ebp]
mov dword [esp], edi
fld st(0)
fstp qword [esp + 4]
mov dword [esp + 0xc], 0x40
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x10], eax
fstp st(0)
call fcn.004ca040
jmp 0x4ccb62
cmp edx, 0xf
jne 0x4ce5b7
fld dword [ebp + 4]
fld dword [ebp]
mov dword [esp], edi
fld st(0)
fstp st(1)
fld st(0)
fstp qword [esp + 4]
fld st(1)
fstp st(2)
fld st(1)
fstp qword [esp + 0xc]
mov dword [esp + 0x14], 0x40
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x18], eax
fstp st(0)
fstp st(0)
call fcn.004ca1b0
jmp 0x4ccb62
fld qword [ebp + 8]
fld qword [ebp]
mov dword [esp], edi
fld st(0)
fstp qword [esp + 4]
fld st(1)
fstp qword [esp + 0xc]
mov dword [esp + 0x14], pe_nt_image_headers32
mov eax, dword [esp + 0xfc]
mov dword [esp + 0x18], eax
fstp st(0)
fstp st(0)
call fcn.004ca1b0
jmp 0x4ccb62
lea esi, [edi + 0x14]
mov eax, edi
mov edi, esi
mov ebx, eax
mov eax, dword [esp + 0xf0]
call fcn.00451ff0
lea edi, [ebx + 0x18]
mov ebp, eax
mov eax, dword [esp + 0xf4]
call fcn.00451ff0
mov ebx, ebp
mov ebp, eax
mov edi, dword [esp + 0xec]
jmp 0x4cc69e
lea ebx, [edi + 0x10]
mov eax, edi
mov edi, ebx
mov ebp, eax
xor eax, eax
call fcn.00451ff0
mov edi, ebp
jmp 0x4cc679
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.0047f690
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0xec]
mov dword [edx + 0xc], eax
mov eax, dword [0xc6be00]
test eax, eax
jne 0x4ce6b2
mov dword [edx + 0x10], ecx
mov dword [esp], edx
mov eax, dword [esp + 0xfc]
mov dword [esp + 4], eax
call fcn.004cb600
movzx eax, byte [esp + 8]
test al, al
jne 0x4ce6ab
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0xf8]
jmp 0x4cc656
add esp, 0xe8
ret
lea edi, [edx + 0x10]
mov eax, ecx
call fcn.00451ff0
jmp 0x4ce67c
mov edx, dword [esp + 0xf8]
jmp 0x4cc656
mov eax, dword [esp + 0x7c]
mov dword [edi + 8], eax
lea eax, [0x852720]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.0042b540
mov eax, dword [esp + 0x7c]
mov dword [edi + 8], eax
lea eax, [0x852720]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.0042b540
mov eax, dword [esp + 0x7c]
mov dword [edi + 8], eax
lea eax, [0x852720]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.0042b540
mov eax, dword [esp + 0x7c]
mov dword [edi + 8], eax
lea eax, [0x852720]
mov dword [esp], eax
mov dword [esp + 4], edi
call fcn.0042b540
call fcn.00452070
mov eax, ebp
call fcn.00452070
nop
call fcn.004507b0
jmp fcn.004cc610