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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x58]
cmp eax, dword [ecx + 8]
jbe 0x4b270b
sub esp, 0xd8
mov ecx, dword [esp + 0xf0]
test ecx, ecx
jle 0x4b26b8
mov edx, dword [esp + 0xe8]
test edx, edx
je 0x4b0856
test edx, 0x60
je 0x4b2636
mov edi, dword [esp + 0xdc]
mov dword [edi + 0xc], 0
mov ebx, dword [0x63be10]
test ebx, ebx
jne 0x4b261f
mov dword [edi + 0x10], 0
mov dword [edi + 0x1c], edx
mov ebx, dword [0x63be10]
test ebx, ebx
jne 0x4b25e9
mov ebx, dword [esp + 0xe0]
mov dword [edi + 0x14], ebx
mov ebp, dword [esp + 0xe4]
mov dword [edi + 0x18], ebp
nop
mov esi, edx
and edx, 0x1f
cmp edx, 0x10
jbe 0x4b228a
cmp edx, 0x15
ja 0x4b1aed
cmp edx, 0x13
ja 0x4b11e7
cmp edx, 0x11
jne 0x4b11c3
mov dword [esp + 0x7c], edx
mov eax, dword [esp + 0xec]
cmp eax, 0x71
jg 0x4b11ac
cmp eax, 0x58
jne 0x4b119e
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004a5db0
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 0x4b0b9d
mov eax, dword [esp + 0x7c]
cmp eax, 0x17
je 0x4b0b67
mov eax, dword [esp + 0xe8]
test eax, 0x100
jne 0x4b0ae7
mov ecx, dword [esp + 0xe0]
mov dword [esp], ecx
mov edx, dword [esp + 0xe4]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.004a4910
mov eax, dword [esp + 0xc]
mov dword [esp + 0x6c], eax
lea ecx, [0x51b4a0]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.00442650
mov eax, dword [esp + 0xc]
mov dword [esp + 0xa0], eax
xor ecx, ecx
jmp 0x4b09a6
mov ebx, dword [esp + 0xa0]
mov byte [ebx + eax], dl
lea edx, [eax + 1]
mov eax, ebx
mov ecx, edx
mov edx, dword [esp + 0x6c]
cmp edx, ecx
jle 0x4b0a74
mov dword [esp + 0x60], ecx
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov edx, dword [esp + 0xe4]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0xe8]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
call fcn.004a45d0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
and eax, 0x1f
mov dword [esp + 0x7c], eax
cmp eax, 9
ja 0x4b0a37
cmp eax, 7
jne 0x4b0a0b
mov edx, dword [ecx]
mov ecx, dword [esp + 0x6c]
mov eax, dword [esp + 0x60]
cmp ecx, eax
ja 0x4b0995
jmp 0x4b26c4
cmp eax, 8
jne 0x4b0a1f
movzx edx, byte [ecx]
mov ecx, dword [esp + 0x6c]
mov eax, dword [esp + 0x60]
cmp ecx, eax
jmp 0x4b0a04
cmp eax, 9
jne 0x4b26c9
movzx edx, word [ecx]
mov ecx, dword [esp + 0x6c]
mov eax, dword [esp + 0x60]
cmp ecx, eax
jmp 0x4b0a04
cmp eax, 0xa
jne 0x4b0a4a
mov edx, dword [ecx]
mov ecx, dword [esp + 0x6c]
mov eax, dword [esp + 0x60]
cmp ecx, eax
jmp 0x4b0a04
cmp eax, 0xb
jne 0x4b0a5d
mov edx, dword [ecx]
mov ecx, dword [esp + 0x6c]
mov eax, dword [esp + 0x60]
cmp ecx, eax
jmp 0x4b0a04
cmp eax, 0xc
jne 0x4b26c9
mov edx, dword [ecx]
mov ecx, dword [esp + 0x6c]
mov eax, dword [esp + 0x60]
cmp ecx, eax
jmp 0x4b0a04
mov ecx, edx
mov dword [esp + 0x6c], edx
mov dword [esp + 0x68], ecx
mov dword [esp + 0x8c], 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 + 4]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xdc]
mov dword [esp], edx
mov edx, dword [esp + 0x8c]
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 + 0xec]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], ecx
call fcn.004ae9e0
add esp, 0xd8
ret
mov ecx, dword [esp + 0xe0]
mov dword [esp], ecx
mov edx, dword [esp + 0xe4]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call fcn.004a4910
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xe0]
mov dword [esp], ecx
mov ecx, dword [esp + 0xe4]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0xe8]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], eax
call fcn.004a5a80
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.004a3b60
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
jmp 0x4b0a76
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xe8]
mov dword [esp + 8], eax
call fcn.004a3b60
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
jmp 0x4b0a76
mov eax, dword [esp + 0xdc]
movzx ecx, byte [eax + 0x2c]
test cl, cl
jne 0x4b0dbe
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
cmp ebp, edx
jb 0x4b0d6e
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebx + ecx], 0x5b
xor ecx, ecx
jmp 0x4b0c41
mov ecx, dword [esp + 0xe0]
mov dword [esp], ecx
mov edx, dword [esp + 0xe4]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0xe8]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
call fcn.004a45d0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xdc]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0xec]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0xf0]
lea edx, [ecx + 1]
mov dword [esp + 0x14], edx
call fcn.004b0810
mov eax, dword [esp + 0x64]
lea ecx, [eax + 1]
mov dword [esp + 0x64], ecx
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov edx, dword [esp + 0xe4]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0xe8]
mov dword [esp + 8], ebx
call fcn.004a4910
mov eax, dword [esp + 0x64]
cmp dword [esp + 0xc], eax
jle 0x4b0cf9
test eax, eax
jle 0x4b0bd1
mov ecx, dword [esp + 0xdc]
mov edx, dword [ecx + 4]
lea ebx, [edx + 1]
mov ebp, dword [ecx]
mov esi, dword [ecx + 8]
cmp ebx, esi
ja 0x4b0ca6
lea ebx, [edx + 1]
mov dword [ecx + 4], ebx
mov byte [ebp + edx], 0x20
jmp 0x4b0bd1
lea eax, [0x51b4a0]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebx
call fcn.004427c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xdc]
mov dword [edi + 8], edx
mov edx, dword [0x63be10]
test edx, edx
jne 0x4b0cf2
mov dword [edi], eax
mov edx, ecx
mov ebp, eax
mov eax, dword [esp + 0x64]
mov ecx, edi
jmp 0x4b0c96
call fcn.0045a680
jmp 0x4b0ce6
nop
mov eax, dword [esp + 0xdc]
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
cmp ebp, edx
jb 0x4b0d21
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebx + ecx], 0x5d
add esp, 0xd8
ret
lea eax, [0x51b4a0]
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.004427c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xdc]
mov dword [edi + 8], edx
mov edx, dword [0x63be10]
test edx, edx
jne 0x4b0d67
mov dword [edi], eax
mov ebx, eax
mov eax, edi
jmp 0x4b0d10
call fcn.0045a680
jmp 0x4b0d61
lea eax, [0x51b4a0]
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.004427c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xdc]
mov dword [edi + 8], edx
mov edx, dword [0x63be10]
test edx, edx
jne 0x4b0db7
mov dword [edi], eax
mov ebx, eax
mov eax, edi
jmp 0x4b0bc3
call fcn.0045a680
jmp 0x4b0dae
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov ecx, dword [esp + 0xe4]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xe8]
mov dword [esp + 8], edx
call fcn.004a5db0
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 + 0x4c], eax
mov ecx, dword [esp + 0xdc]
mov edx, dword [ecx + 4]
mov dword [esp + 0x78], edx
lea ebx, [eax + edx]
mov dword [esp + 0x74], ebx
mov ebp, dword [esp + 4]
mov esi, dword [ecx + 8]
mov edi, dword [ecx]
cmp esi, ebx
jb 0x4b115d
mov dword [esp + 0x9c], edi
mov dword [esp + 0x70], esi
lea ecx, [edi + edx]
mov dword [esp], ecx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
call fcn.0045aff0
mov eax, dword [esp + 0x74]
mov edi, dword [esp + 0xdc]
mov dword [edi + 4], eax
mov ecx, dword [esp + 0x70]
mov dword [edi + 8], ecx
mov edx, dword [0x63be10]
test edx, edx
jne 0x4b1141
mov edx, dword [esp + 0x9c]
mov dword [edi], edx
mov ebx, dword [esp + 0x7c]
cmp ebx, 0x17
jne 0x4b1135
mov ebx, dword [esp + 0xe4]
mov ebp, dword [ebx]
test ebp, ebp
xchg ebp, ebx
setne bl
xchg ebp, ebx
xor ebp, 1
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x4b10bb
mov ebp, dword [esp + 0x78]
mov esi, dword [esp + 0x4c]
lea ebp, [esi + ebp + 1]
cmp ecx, ebp
jb 0x4b1064
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [edx + eax], 0x7b
xor eax, eax
jmp 0x4b0f31
mov ecx, dword [esp + 0xe0]
mov dword [esp], ecx
mov edx, dword [esp + 0xe4]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0xe8]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
call fcn.004a45d0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xdc]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0xec]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0xf0]
lea edx, [ecx + 1]
mov dword [esp + 0x14], edx
call fcn.004b0810
mov eax, dword [esp + 0x54]
inc eax
mov ebx, dword [esp + 0xe4]
mov dword [esp + 0x54], eax
mov ecx, dword [esp + 0xe0]
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov edx, dword [esp + 0xe8]
mov dword [esp + 8], edx
call fcn.004a4910
mov eax, dword [esp + 0x54]
cmp dword [esp + 0xc], eax
jle 0x4b0ff1
test eax, eax
jle 0x4b0ebc
nop
mov edi, dword [esp + 0xdc]
mov ecx, dword [edi + 4]
lea edx, [ecx + 2]
mov ebx, dword [edi + 8]
mov ebp, dword [edi]
cmp edx, ebx
ja 0x4b0fae
mov word [ebp + ecx], 0x202c
mov dword [edi + 4], edx
mov dword [edi + 8], ebx
mov ecx, dword [0x63be10]
test ecx, ecx
jne 0x4b0f9e
mov dword [edi], ebp
jmp 0x4b0ebc
mov ecx, eax
mov eax, ebp
call fcn.0045a680
mov eax, ecx
jmp 0x4b0ebc
mov dword [esp + 0x78], ecx
mov dword [esp + 0x74], edx
lea eax, [0x51b4a0]
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.004427c0
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x1c]
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x74]
mov edi, dword [esp + 0xdc]
jmp 0x4b0f80
nop
mov eax, dword [esp + 0xdc]
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
cmp ebp, edx
jb 0x4b1017
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebx + ecx], 0x7d
jmp 0x4b0d1a
lea eax, [0x51b4a0]
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.004427c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xdc]
mov dword [edi + 8], edx
mov edx, dword [0x63be10]
test edx, edx
jne 0x4b105d
mov dword [edi], eax
mov ebx, eax
mov eax, edi
jmp 0x4b1008
call fcn.0045a680
jmp 0x4b1057
lea ebx, [0x51b4a0]
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.004427c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xdc]
mov dword [edi + 8], edx
mov edx, dword [0x63be10]
test edx, edx
jne 0x4b10b4
mov dword [edi], eax
mov ebx, dword [esp + 0xe4]
mov edx, eax
mov eax, ecx
jmp 0x4b0eae
call fcn.0045a680
jmp 0x4b10a4
nop
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x4c]
lea ebx, [ebp + ebx + 5]
cmp ecx, ebx
jb 0x4b10fa
mov dword [edx + eax], 0x6c696e28
mov byte [edx + eax + 4], 0x29
mov dword [edi + 4], ebx
mov dword [edi + 8], ecx
mov ecx, dword [0x63be10]
test ecx, ecx
jne 0x4b10f1
mov dword [edi], edx
add esp, 0xd8
ret
mov eax, edx
call fcn.0045a680
jmp 0x4b10ea
mov dword [esp + 0x78], ebx
lea ebp, [0x51b4a0]
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.004427c0
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x74]
mov ebx, dword [esp + 0x78]
mov edi, dword [esp + 0xdc]
jmp 0x4b10cc
mov ebx, dword [esp + 0xe4]
jmp 0x4b0e9a
mov edx, eax
mov eax, dword [esp + 0x9c]
call fcn.0045a680
mov eax, edx
mov edx, dword [esp + 0x9c]
jmp 0x4b0e6e
mov dword [esp + 0x98], ebp
lea eax, [0x51b4a0]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebx
call fcn.004427c0
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x4c]
mov edx, dword [esp + 0x78]
mov ebp, dword [esp + 0x98]
jmp 0x4b0e24
cmp eax, 0x71
je 0x4b08e5
jmp 0x4b0b9d
cmp eax, 0x73
je 0x4b08e5
cmp eax, 0x78
je 0x4b08e5
jmp 0x4b0b9d
mov dword [esp], edi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], esi
mov eax, dword [esp + 0xec]
mov dword [esp + 0x10], eax
call fcn.004af0b0
jmp 0x4b0d1a
cmp edx, 0x14
je 0x4b1880
movzx edx, byte [edi + 0x2c]
test dl, dl
jne 0x4b164b
nop
mov edx, dword [edi + 4]
mov eax, ecx
lea ecx, [edx + 4]
mov esi, dword [edi + 8]
mov ebp, dword [edi]
cmp esi, ecx
jb 0x4b15fb
mov dword [ebp + edx], 0x5b70616d
mov dword [edi + 4], ecx
mov dword [edi + 8], esi
mov ecx, dword [0x63be10]
test ecx, ecx
jne 0x4b15eb
mov dword [edi], ebp
mov dword [esp], ebx
mov eax, dword [esp + 0xe4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xe8]
mov dword [esp + 8], eax
call fcn.004a9510
mov eax, dword [esp + 0xc]
mov ecx, dword [eax + 4]
mov edx, dword [eax]
test ecx, ecx
jle 0x4b13bb
mov dword [esp + 0x78], ecx
mov dword [esp + 0x84], eax
xor ebx, ebx
jmp 0x4b1281
mov ebp, dword [esp + 0x94]
lea edx, [ebp + 0xc]
mov ebx, eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0x94], edx
mov dword [esp + 0x58], ebx
mov ebp, dword [edx + 4]
mov dword [esp + 0xa0], ebp
mov esi, dword [edx + 8]
mov dword [esp + 0x7c], esi
mov edi, edx
mov edx, dword [edx]
mov dword [esp + 0x90], edx
test ebx, ebx
jle 0x4b15df
mov ecx, dword [esp + 0xdc]
movzx ebx, byte [ecx + 0x2c]
test bl, bl
je 0x4b1558
nop
mov ebx, dword [ecx + 4]
lea esi, [ebx + 2]
mov ebp, dword [ecx + 8]
mov edx, dword [ecx]
cmp ebp, esi
jb 0x4b1508
mov word [edx + ebx], 0x202c
mov dword [ecx + 4], esi
mov dword [ecx + 8], ebp
mov ebx, dword [0x63be10]
test ebx, ebx
jne 0x4b14f2
mov dword [ecx], edx
mov dword [esp], ecx
mov eax, dword [esp + 0x90]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xa0]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xec]
mov dword [esp + 0x10], eax
mov edx, dword [esp + 0xf0]
lea ebx, [edx + 1]
mov dword [esp + 0x74], ebx
mov dword [esp + 0x14], ebx
call fcn.004b0810
nop
mov eax, dword [esp + 0xdc]
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
cmp ebp, edx
jb 0x4b14a2
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebx + ecx], 0x3a
mov edx, dword [esp + 0x84]
mov ebx, dword [edx + 0xc]
mov ecx, dword [edx + 0x10]
mov ebp, dword [esp + 0x58]
cmp ecx, ebp
jbe 0x4b2703
lea ecx, [ebp + ebp*2]
mov edx, dword [ebx + ecx*4]
mov esi, dword [ebx + ecx*4 + 4]
mov ecx, dword [ebx + ecx*4 + 8]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov dword [esp + 0xc], ecx
mov ecx, dword [esp + 0xec]
mov dword [esp + 0x10], ecx
mov edx, dword [esp + 0x74]
mov dword [esp + 0x14], edx
call fcn.004b0810
mov eax, dword [esp + 0x58]
inc eax
mov ecx, dword [esp + 0x78]
cmp ecx, eax
jg 0x4b126e
mov eax, dword [esp + 0xdc]
movzx ecx, byte [eax + 0x2c]
test cl, cl
je 0x4b1436
nop
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
cmp ebp, edx
jb 0x4b13e9
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebx + ecx], 0x7d
jmp 0x4b0d1a
lea eax, [0x51b4a0]
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.004427c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xdc]
mov dword [edi + 8], edx
mov edx, dword [0x63be10]
test edx, edx
jne 0x4b142f
mov dword [edi], eax
mov ebx, eax
mov eax, edi
jmp 0x4b13da
call fcn.0045a680
jmp 0x4b1429
nop
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
cmp ebp, edx
jb 0x4b1455
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebx + ecx], 0x5d
jmp 0x4b0d1a
lea eax, [0x51b4a0]
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.004427c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xdc]
mov dword [edi + 8], edx
mov edx, dword [0x63be10]
test edx, edx
jne 0x4b149b
mov dword [edi], eax
mov ebx, eax
mov eax, edi
jmp 0x4b1446
call fcn.0045a680
jmp 0x4b1495
lea eax, [0x51b4a0]
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.004427c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xdc]
mov dword [edi + 8], edx
mov edx, dword [0x63be10]
test edx, edx
jne 0x4b14eb
mov dword [edi], eax
mov ebx, eax
mov eax, edi
jmp 0x4b1351
call fcn.0045a680
jmp 0x4b14e2
mov ebx, edi
mov edi, ecx
mov ebp, eax
mov eax, edx
call fcn.0045a680
mov eax, ebp
mov edi, ebx
jmp 0x4b12f3
mov dword [esp + 0x74], ebx
mov dword [esp + 0x70], esi
lea eax, [0x51b4a0]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], esi
call fcn.004427c0
mov edx, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0xdc]
mov ebx, dword [esp + 0x74]
mov esi, dword [esp + 0x70]
mov edi, dword [esp + 0x94]
jmp 0x4b12d7
mov ebx, dword [ecx + 4]
lea edi, [ebx + 1]
mov eax, dword [ecx]
mov esi, dword [ecx + 8]
cmp esi, edi
jb 0x4b1584
lea esi, [ebx + 1]
mov dword [ecx + 4], esi
mov byte [eax + ebx], 0x20
mov eax, dword [esp + 0x84]
mov edi, dword [esp + 0x94]
jmp 0x4b12f3
lea ecx, [0x51b4a0]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], edi
call fcn.004427c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xdc]
mov dword [edi + 8], edx
mov edx, dword [0x63be10]
test edx, edx
jne 0x4b15d8
mov dword [edi], eax
mov edx, dword [esp + 0x90]
mov ebp, dword [esp + 0xa0]
mov ebx, ecx
mov ecx, edi
jmp 0x4b1567
call fcn.0045a680
jmp 0x4b15c4
mov ecx, dword [esp + 0xdc]
jmp 0x4b12f3
mov ecx, eax
mov eax, ebp
call fcn.0045a680
mov eax, ecx
jmp 0x4b1230
mov dword [esp + 0x78], edx
mov dword [esp + 0x74], ecx
lea eax, [0x51b4a0]
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.004427c0
mov ebp, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0xf0]
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x78]
mov ebx, dword [esp + 0xe0]
mov edi, dword [esp + 0xdc]
jmp 0x4b1212
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004a5db0
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 + 0xdc]
mov edx, dword [ecx + 4]
mov dword [esp + 0x78], edx
lea ebx, [eax + edx]
mov dword [esp + 0x74], ebx
mov ebp, dword [esp + 4]
mov esi, dword [ecx + 8]
mov edi, dword [ecx]
cmp esi, ebx
jb 0x4b183f
mov dword [esp + 0x70], esi
mov dword [esp + 0x9c], edi
lea ecx, [edi + edx]
mov dword [esp], ecx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
call fcn.0045aff0
mov eax, dword [esp + 0x74]
mov edi, dword [esp + 0xdc]
mov dword [edi + 4], eax
mov ecx, dword [esp + 0x70]
mov dword [edi + 8], ecx
mov edx, dword [0x63be10]
test edx, edx
jne 0x4b1823
mov edx, dword [esp + 0x9c]
mov dword [edi], edx
mov ebx, dword [esp + 0xe8]
test ebx, 0x200
je 0x4b176f
mov ebp, dword [esp + 0x78]
mov esi, dword [esp + 0x44]
lea ebp, [esi + ebp + 1]
cmp ecx, ebp
jb 0x4b171b
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [edx + eax], 0x7b
mov ebx, dword [esp + 0xe0]
jmp 0x4b1230
lea ebx, [0x51b4a0]
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.004427c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xdc]
mov dword [edi + 8], edx
mov edx, dword [0x63be10]
test edx, edx
jne 0x4b1768
mov dword [edi], eax
mov ebx, dword [esp + 0xe8]
mov edx, eax
mov eax, ecx
jmp 0x4b1705
call fcn.0045a680
jmp 0x4b175b
test ebx, 0x80
je 0x4b1815
mov ebp, dword [esp + 0xe4]
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 0x4b16f5
nop
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x44]
lea ebx, [ebp + ebx + 5]
cmp ecx, ebx
jb 0x4b17da
mov dword [edx + eax], 0x6c696e28
mov byte [edx + eax + 4], 0x29
mov dword [edi + 4], ebx
mov dword [edi + 8], ecx
mov ecx, dword [0x63be10]
test ecx, ecx
jne 0x4b17d1
mov dword [edi], edx
add esp, 0xd8
ret
mov eax, edx
call fcn.0045a680
jmp 0x4b17ca
mov dword [esp + 0x78], ebx
lea ebp, [0x51b4a0]
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.004427c0
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x74]
mov ebx, dword [esp + 0x78]
mov edi, dword [esp + 0xdc]
jmp 0x4b17ac
mov ebp, dword [esp + 0xe4]
mov esi, ebp
jmp 0x4b1785
mov edx, eax
mov eax, dword [esp + 0x9c]
call fcn.0045a680
mov eax, edx
mov edx, dword [esp + 0x9c]
jmp 0x4b16e6
mov dword [esp + 0x98], ebp
lea eax, [0x51b4a0]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebx
call fcn.004427c0
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x78]
mov ebp, dword [esp + 0x98]
jmp 0x4b169c
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004a4370
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
test eax, eax
jne 0x4b1ab6
mov edi, dword [esp + 0xdc]
movzx ecx, byte [edi + 0x2c]
test cl, cl
jne 0x4b1932
nop
mov ecx, dword [edi + 4]
lea edx, [ecx + 5]
mov ebx, dword [edi + 8]
mov ebp, dword [edi]
cmp ebx, edx
jb 0x4b18f3
mov dword [ebp + ecx], 0x6c696e3c
mov byte [ebp + ecx + 4], 0x3e
mov dword [edi + 4], edx
mov dword [edi + 8], ebx
mov ecx, dword [0x63be10]
test ecx, ecx
jne 0x4b18e7
mov dword [edi], ebp
jmp 0x4b0d1a
mov eax, ebp
call fcn.0045a680
jmp 0x4b0d1a
mov dword [esp + 0x78], ecx
mov dword [esp + 0x74], edx
lea eax, [0x51b4a0]
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.004427c0
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x74]
mov edi, dword [esp + 0xdc]
jmp 0x4b18c3
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 4], eax
mov eax, dword [esp + 0xe8]
mov dword [esp + 8], eax
call fcn.004a5db0
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 + 0x40], eax
mov ecx, dword [esp + 0xdc]
mov edx, dword [ecx + 4]
mov dword [esp + 0x78], edx
lea ebx, [edx + eax]
mov dword [esp + 0x74], ebx
mov ebp, dword [esp + 4]
mov esi, dword [ecx + 8]
mov edi, dword [ecx]
cmp ebx, esi
ja 0x4b1a75
mov dword [esp + 0x70], esi
mov dword [esp + 0x9c], edi
lea ecx, [edi + edx]
mov dword [esp], ecx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
call fcn.0045aff0
mov eax, dword [esp + 0x74]
mov edi, dword [esp + 0xdc]
mov dword [edi + 4], eax
mov ecx, dword [esp + 0x70]
mov dword [edi + 8], ecx
mov edx, dword [0x63be10]
mov ebx, dword [esp + 0x40]
mov ebp, dword [esp + 0x78]
lea ebx, [ebp + ebx + 5]
test edx, edx
jne 0x4b1a59
mov edx, dword [esp + 0x9c]
mov dword [edi], edx
nop
cmp ebx, ecx
ja 0x4b1a1e
mov dword [edx + eax], 0x6c696e28
mov byte [edx + eax + 4], 0x29
mov dword [edi + 4], ebx
mov dword [edi + 8], ecx
mov ecx, dword [0x63be10]
test ecx, ecx
jne 0x4b1a12
mov dword [edi], edx
jmp 0x4b0d1a
mov eax, edx
call fcn.0045a680
jmp 0x4b0d1a
mov dword [esp + 0x78], ebx
lea ebp, [0x51b4a0]
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.004427c0
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x74]
mov ebx, dword [esp + 0x78]
mov edi, dword [esp + 0xdc]
jmp 0x4b19ef
mov edx, eax
mov eax, dword [esp + 0x9c]
call fcn.0045a680
mov eax, edx
mov edx, dword [esp + 0x9c]
jmp 0x4b19ea
mov dword [esp + 0x98], ebp
lea eax, [0x51b4a0]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebx
call fcn.004427c0
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0x78]
mov ebp, dword [esp + 0x98]
jmp 0x4b1998
mov ebx, dword [esp + 0xdc]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xec]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xf0]
inc eax
mov dword [esp + 0x14], eax
call fcn.004b0810
jmp 0x4b0d1a
cmp edx, 0x17
ja 0x4b1c8f
cmp edx, 0x16
jne 0x4b08c8
test ecx, ecx
je 0x4b1c4e
xor eax, eax
test al, al
je 0x4b11c3
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004a4370
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
nop
mov ebx, eax
and eax, 0x1f
cmp eax, 0x15
ja 0x4b1c3a
cmp eax, 0x11
jne 0x4b1c10
mov dword [esp + 0x7c], ebx
nop
mov eax, dword [esp + 0xdc]
mov ebp, dword [eax + 4]
lea esi, [ebp + 1]
mov edi, dword [eax]
mov ebx, dword [eax + 8]
cmp ebx, esi
jb 0x4b1ba0
lea ebx, [ebp + 1]
mov dword [eax + 4], ebx
mov byte [edi + ebp], 0x26
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov eax, dword [esp + 0x7c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xec]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xf0]
inc eax
mov dword [esp + 0x14], eax
call fcn.004b0810
add esp, 0xd8
ret
mov dword [esp + 0xa0], edx
mov dword [esp + 0x90], ecx
lea eax, [0x51b4a0]
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.004427c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xdc]
mov dword [edi + 8], edx
mov edx, dword [0x63be10]
test edx, edx
jne 0x4b1c09
mov dword [edi], eax
mov edx, dword [esp + 0xa0]
mov ebp, ecx
mov ecx, dword [esp + 0x90]
mov ebx, eax
mov eax, edi
mov edi, ebx
jmp 0x4b1b60
call fcn.0045a680
jmp 0x4b1bee
cmp eax, 0x15
je 0x4b1b45
mov ebx, dword [esp + 0xe0]
mov ebp, dword [esp + 0xe4]
mov esi, dword [esp + 0xe8]
mov edi, dword [esp + 0xdc]
jmp 0x4b11c3
cmp eax, 0x17
je 0x4b1b45
cmp eax, 0x19
je 0x4b1b45
jmp 0x4b1c19
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004a5020
mov eax, dword [esp + 0xc]
test eax, eax
setne al
mov ecx, dword [esp + 0xf0]
mov ebx, dword [esp + 0xe0]
mov ebp, dword [esp + 0xe4]
mov esi, dword [esp + 0xe8]
mov edi, dword [esp + 0xdc]
jmp 0x4b1b09
cmp edx, 0x18
je 0x4b224b
cmp edx, 0x19
jne 0x4b2229
movzx eax, byte [edi + 0x2c]
test al, al
jne 0x4b2126
mov eax, dword [edi + 4]
lea edx, [eax + 1]
mov ecx, dword [edi]
mov esi, dword [edi + 8]
cmp esi, edx
jb 0x4b20c6
lea edx, [eax + 1]
mov dword [edi + 4], edx
mov byte [ecx + eax], 0x7b
xor eax, eax
jmp 0x4b1d51
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov ecx, dword [esp + 0xe4]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xe8]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x5c]
mov dword [esp + 0xc], ebx
call fcn.004ad8c0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0xdc]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0xec]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0xf0]
lea edx, [ecx + 1]
mov dword [esp + 0x14], edx
call fcn.004b0810
mov eax, dword [esp + 0x5c]
inc eax
mov ebx, dword [esp + 0xe0]
mov ebp, dword [esp + 0xe4]
mov dword [esp + 0x5c], eax
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov ecx, dword [esp + 0xe8]
mov dword [esp + 8], ecx
call fcn.004a4f70
mov eax, dword [esp + 0x5c]
cmp dword [esp + 0xc], eax
jle 0x4b2054
test eax, eax
jle 0x4b2048
mov edi, dword [esp + 0xdc]
movzx ecx, byte [edi + 0x2c]
test cl, cl
je 0x4b1fdb
nop
mov ecx, dword [edi + 4]
lea edx, [ecx + 2]
mov ebx, dword [edi + 8]
mov ebp, dword [edi]
cmp edx, ebx
ja 0x4b1f95
mov word [ebp + ecx], 0x202c
mov dword [edi + 4], edx
mov dword [edi + 8], ebx
mov ecx, dword [0x63be10]
test ecx, ecx
jne 0x4b1f85
mov dword [edi], ebp
movzx ecx, byte [edi + 0x2b]
test cl, cl
je 0x4b1f74
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov ecx, dword [esp + 0xe4]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xe8]
mov dword [esp + 8], edx
call fcn.004a5db0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x2c]
mov dword [esp], ecx
mov ecx, dword [esp + 0x5c]
mov dword [esp + 4], ecx
call eax
lea edi, [esp + 0xa4]
lea esi, [esp + 8]
call fcn.0045ad7e
mov eax, dword [esp + 0xa8]
mov ecx, dword [esp + 0xa4]
test eax, eax
je 0x4b1f68
mov dword [esp + 0x48], eax
nop
mov edx, dword [esp + 0xdc]
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 0x4b1f27
mov dword [esp + 0x9c], 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.0045aff0
mov eax, dword [esp + 0x74]
mov edi, dword [esp + 0xdc]
mov dword [edi + 4], eax
mov ecx, dword [esp + 0x70]
mov dword [edi + 8], ecx
mov edx, dword [0x63be10]
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x48]
lea ebx, [ebp + ebx + 1]
test edx, edx
jne 0x4b1f0e
mov edx, dword [esp + 0x9c]
mov dword [edi], edx
cmp ebx, ecx
ja 0x4b1ec1
lea ecx, [eax + 1]
mov dword [edi + 4], ecx
mov byte [edx + eax], 0x3a
jmp 0x4b1cd1
lea ebp, [0x51b4a0]
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.004427c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xdc]
mov dword [edi + 8], edx
mov edx, dword [0x63be10]
test edx, edx
jne 0x4b1f07
mov dword [edi], eax
mov edx, eax
mov eax, ecx
jmp 0x4b1eb2
call fcn.0045a680
jmp 0x4b1f01
mov edx, eax
mov eax, dword [esp + 0x9c]
call fcn.0045a680
mov eax, edx
mov edx, dword [esp + 0x9c]
jmp 0x4b1eae
mov dword [esp + 0x88], ecx
lea eax, [0x51b4a0]
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.004427c0
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x88]
mov ebx, dword [esp + 0x78]
jmp 0x4b1e5c
mov edi, dword [esp + 0xdc]
jmp 0x4b1cd1
movzx ecx, byte [edi + 0x2c]
test cl, cl
jne 0x4b1dd2
jmp 0x4b1cd1
mov ecx, eax
mov eax, ebp
call fcn.0045a680
mov eax, ecx
jmp 0x4b1dc6
mov dword [esp + 0x78], edx
mov dword [esp + 0x74], ecx
lea eax, [0x51b4a0]
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.004427c0
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x1c]
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x78]
mov edi, dword [esp + 0xdc]
jmp 0x4b1da9
mov ecx, dword [edi + 4]
lea edx, [ecx + 1]
mov ebx, dword [edi]
mov ebp, dword [edi + 8]
cmp edx, ebp
ja 0x4b1ff9
lea edx, [ecx + 1]
mov dword [edi + 4], edx
mov byte [ebx + ecx], 0x20
jmp 0x4b1dc6
lea eax, [0x51b4a0]
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.004427c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xdc]
mov dword [edi + 8], edx
mov edx, dword [0x63be10]
test edx, edx
jne 0x4b2041
mov dword [edi], eax
mov ebx, eax
mov eax, dword [esp + 0x5c]
jmp 0x4b1fea
call fcn.0045a680
jmp 0x4b2039
mov edi, dword [esp + 0xdc]
jmp 0x4b1dc6
mov eax, dword [esp + 0xdc]
mov ecx, dword [eax + 4]
lea edx, [ecx + 1]
mov ebx, dword [eax]
mov ebp, dword [eax + 8]
cmp ebp, edx
jb 0x4b2079
lea edx, [ecx + 1]
mov dword [eax + 4], edx
mov byte [ebx + ecx], 0x7d
jmp 0x4b0d1a
lea eax, [0x51b4a0]
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.004427c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xdc]
mov dword [edi + 8], edx
mov edx, dword [0x63be10]
test edx, edx
jne 0x4b20bf
mov dword [edi], eax
mov ebx, eax
mov eax, edi
jmp 0x4b206a
call fcn.0045a680
jmp 0x4b20b9
lea ebx, [0x51b4a0]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], edx
call fcn.004427c0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0xdc]
mov dword [edi + 8], edx
mov edx, dword [0x63be10]
test edx, edx
jne 0x4b211f
mov dword [edi], eax
mov ebx, dword [esp + 0xe0]
mov ebp, dword [esp + 0xe4]
mov edx, eax
mov eax, ecx
mov ecx, edx
jmp 0x4b1cc0
call fcn.0045a680
jmp 0x4b2106
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004a5db0
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 + 0xdc]
mov edx, dword [ecx + 4]
lea ebx, [eax + edx]
mov dword [esp + 0x78], ebx
mov ebp, dword [esp + 4]
mov esi, dword [ecx + 8]
mov edi, dword [ecx]
cmp esi, ebx
jb 0x4b21e0
mov dword [esp + 0x74], esi
mov dword [esp + 0x9c], edi
lea ecx, [edi + edx]
mov dword [esp], ecx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
call fcn.0045aff0
mov eax, dword [esp + 0x78]
mov edi, dword [esp + 0xdc]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x74]
mov dword [edi + 8], eax
mov eax, dword [0x63be10]
test eax, eax
jne 0x4b21d2
mov eax, dword [esp + 0x9c]
mov dword [edi], eax
mov ecx, dword [esp + 0xf0]
mov ebx, dword [esp + 0xe0]
mov ebp, dword [esp + 0xe4]
mov esi, dword [esp + 0xe8]
jmp 0x4b1cad
mov eax, dword [esp + 0x9c]
call fcn.0045a680
jmp 0x4b21b1
mov dword [esp + 0x74], edx
mov dword [esp + 0x50], eax
mov dword [esp + 0x98], ebp
lea eax, [0x51b4a0]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebx
call fcn.004427c0
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x74]
mov ebp, dword [esp + 0x98]
jmp 0x4b216b
cmp edx, 0x1a
je 0x4b11c3
mov dword [esp], edi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], esi
call fcn.004ad960
jmp 0x4b0d1a
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004a5cc0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xdc]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
mov eax, dword [esp + 0xec]
mov dword [esp + 0xc], eax
call fcn.004ae840
jmp 0x4b0d1a
cmp edx, 0xc
ja 0x4b250c
cmp edx, 1
ja 0x4b242c
test edx, edx
jne 0x4b23f4
test ecx, ecx
jne 0x4b2358
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 0x4b2325
mov dword [esp + 0x74], edx
mov dword [esp + 0x9c], ebx
add eax, ebx
mov dword [esp], eax
lea eax, [0x539ca1]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x17
call fcn.0045aff0
mov eax, dword [esp + 0x78]
mov edi, dword [esp + 0xdc]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x74]
mov dword [edi + 8], eax
mov eax, dword [0x63be10]
test eax, eax
jne 0x4b2314
mov eax, dword [esp + 0x9c]
mov dword [edi], eax
jmp 0x4b0d1a
mov eax, dword [esp + 0x9c]
call fcn.0045a680
jmp 0x4b0d1a
mov dword [esp + 0x74], eax
lea ebp, [0x51b4a0]
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.004427c0
mov ebx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x74]
jmp 0x4b22c0
mov ecx, dword [esp + 0xec]
cmp ecx, 0x76
jne 0x4b23e3
nop
mov ecx, dword [edi + 4]
lea edx, [ecx + 5]
mov ebx, dword [edi + 8]
mov ebp, dword [edi]
cmp edx, ebx
ja 0x4b23a4
mov dword [ebp + ecx], 0x6c696e3c
mov byte [ebp + ecx + 4], 0x3e
mov dword [edi + 4], edx
mov dword [edi + 8], ebx
mov ecx, dword [0x63be10]
test ecx, ecx
jne 0x4b2398
mov dword [edi], ebp
jmp 0x4b0d1a
mov eax, ebp
call fcn.0045a680
jmp 0x4b0d1a
mov dword [esp + 0x78], edx
mov dword [esp + 0x74], ecx
lea eax, [0x51b4a0]
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.004427c0
mov ebp, dword [esp + 0x14]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x78]
mov edi, dword [esp + 0xdc]
jmp 0x4b2374
mov dword [esp], edi
mov dword [esp + 4], ecx
call fcn.004adbd0
jmp 0x4b0d1a
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.004a3ab0
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0xdc]
mov dword [esp], ecx
mov byte [esp + 4], al
mov eax, dword [esp + 0xec]
mov dword [esp + 8], eax
call fcn.004ae0f0
jmp 0x4b0d1a
cmp edx, 6
ja 0x4b249a
cmp edx, 3
ja 0x4b2473
cmp edx, 2
jne 0x4b2468
mov eax, dword [ebp]
mov ecx, eax
sar eax, 0x1f
mov dword [esp], edi
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov byte [esp + 0xc], 1
mov eax, dword [esp + 0xec]
mov dword [esp + 0x10], eax
call fcn.004ae1e0
jmp 0x4b0d1a
movsx eax, byte [ebp]
mov ecx, eax
sar eax, 0x1f
jmp 0x4b2443
cmp edx, 4
jne 0x4b2483
movsx eax, word [ebp]
mov ecx, eax
sar eax, 0x1f
jmp 0x4b2443
cmp edx, 5
jne 0x4b2492
mov eax, dword [ebp]
mov ecx, eax
sar eax, 0x1f
jmp 0x4b2443
mov ecx, dword [ebp]
mov eax, dword [ebp + 4]
jmp 0x4b2443
cmp edx, 7
jb 0x4b2232
cmp edx, 9
ja 0x4b24ec
cmp edx, 7
jne 0x4b24d7
mov eax, dword [ebp]
xor ecx, ecx
mov dword [esp], edi
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov byte [esp + 0xc], 0
mov eax, dword [esp + 0xec]
mov dword [esp + 0x10], eax
call fcn.004ae1e0
jmp 0x4b0d1a
cmp edx, 8
jne 0x4b24e4
movzx eax, byte [ebp]
xor ecx, ecx
jmp 0x4b24b2
movzx eax, word [ebp]
xor ecx, ecx
jmp 0x4b24b2
cmp edx, 0xa
jne 0x4b24f8
mov eax, dword [ebp]
xor ecx, ecx
jmp 0x4b24b2
cmp edx, 0xb
jne 0x4b2505
mov eax, dword [ebp]
mov ecx, dword [ebp + 4]
jmp 0x4b24b2
mov eax, dword [ebp]
xor ecx, ecx
jmp 0x4b24b2
cmp edx, 0xe
ja 0x4b2570
cmp edx, 0xd
jne 0x4b2545
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 + 0xec]
mov dword [esp + 0x10], eax
call fcn.004ae4f0
jmp 0x4b0d1a
movsd xmm0, qword [ebp]
mov dword [esp], edi
movsd qword [esp + 4], xmm0
mov dword [esp + 0xc], 0x40
mov eax, dword [esp + 0xec]
mov dword [esp + 0x10], eax
call fcn.004ae4f0
jmp 0x4b0d1a
cmp edx, 0xf
jne 0x4b25b3
movss xmm0, dword [ebp]
movss xmm1, dword [ebp + 4]
mov dword [esp], edi
cvtss2sd xmm0, xmm0
movsd qword [esp + 4], xmm0
cvtss2sd xmm0, xmm1
movsd qword [esp + 0xc], xmm0
mov dword [esp + 0x14], 0x40
mov eax, dword [esp + 0xec]
mov dword [esp + 0x18], eax
call fcn.004ae660
jmp 0x4b0d1a
movsd xmm0, qword [ebp]
movsd xmm1, qword [ebp + 8]
mov dword [esp], edi
movsd qword [esp + 4], xmm0
movsd qword [esp + 0xc], xmm1
mov dword [esp + 0x14], pe_nt_image_headers32
mov eax, dword [esp + 0xec]
mov dword [esp + 0x18], eax
call fcn.004ae660
jmp 0x4b0d1a
lea esi, [edi + 0x14]
mov eax, edi
mov edi, esi
mov ebx, eax
mov eax, dword [esp + 0xe0]
call fcn.0045a680
lea edi, [ebx + 0x18]
mov ebp, eax
mov eax, dword [esp + 0xe4]
call fcn.0045a680
mov ebx, ebp
mov ebp, eax
mov edi, dword [esp + 0xdc]
jmp 0x4b089e
lea ebx, [edi + 0x10]
mov eax, edi
mov edi, ebx
mov ebp, eax
xor eax, eax
call fcn.0045a680
mov edi, ebp
jmp 0x4b0879
mov eax, dword [esp + 0xe0]
mov dword [esp], eax
mov ecx, dword [esp + 0xe4]
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov byte [esp + 0xc], 1
call fcn.004a4780
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xdc]
mov dword [edx + 0xc], ecx
mov ecx, dword [0x63be10]
test ecx, ecx
jne 0x4b26ae
mov dword [edx + 0x10], eax
mov dword [esp], edx
mov eax, dword [esp + 0xec]
mov dword [esp + 4], eax
call fcn.004afa20
movzx eax, byte [esp + 8]
test al, al
jne 0x4b26a7
mov ecx, dword [esp + 0xf0]
mov edx, dword [esp + 0xe8]
jmp 0x4b0856
add esp, 0xd8
ret
lea edi, [edx + 0x10]
call fcn.0045a680
jmp 0x4b2678
mov edx, dword [esp + 0xe8]
jmp 0x4b0856
call fcn.0045a700
lea eax, [0x520cc0]
mov dword [esp], eax
call fcn.0040b6c0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x12
lea ecx, [0x538346]
mov dword [eax], ecx
mov ecx, dword [esp + 0x7c]
mov dword [eax + 8], ecx
lea ecx, [0x51cd40]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004308c0
mov eax, ebp
call fcn.0045a700
nop
call fcn.00459120
jmp fcn.004b0810