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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x110]
cmp eax, dword [ecx + 8]
jbe 0x4a6150
sub esp, 0x190
xor ebx, ebx
mov dword [esp + 0x1ac], ebx
mov dword [esp + 0x1b0], ebx
mov dword [esp + 0x1b4], ebx
mov dword [esp + 0x1b8], ebx
xor ebx, ebx
mov dword [esp + 0x1bc], ebx
mov dword [esp + 0x1c0], ebx
mov ebx, dword [esp + 0x194]
mov dword [esp + 0x150], ebx
mov ebx, dword [esp + 0x198]
mov dword [esp + 0x154], ebx
mov ebx, dword [esp + 0x19c]
mov dword [esp + 0x120], ebx
mov ebx, dword [esp + 0x1a0]
mov dword [esp + 0x124], ebx
xor ebx, ebx
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], ebx
mov byte [esp + 0x33], 0
mov byte [esp + 0x32], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x60], 1
mov dword [esp + 0x78], 1
mov dword [esp + 0x74], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x34], 0xffffffff
xor ebx, ebx
mov dword [esp + 0x98], ebx
mov dword [esp + 0x9c], ebx
xor ebx, ebx
mov dword [esp + 0x118], ebx
mov dword [esp + 0x11c], ebx
mov ebx, dword [esp + 0x194]
mov dword [esp], ebx
mov ebx, dword [esp + 0x198]
mov dword [esp + 4], ebx
call fcn.0049ed30
mov eax, dword [esp + 0x198]
mov esi, dword [esp + 8]
mov ebp, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x3c], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0xa0], ebx
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xa4], ecx
mov edi, eax
sub eax, ecx
cmp eax, edi
ja 0x4a6149
cmp ebp, eax
ja 0x4a6149
mov edx, eax
sub edx, ebp
mov eax, dword [esp + 0x194]
cmp edx, 0
je 0x4a362b
add eax, ebp
mov dword [esp + 0xac], edx
mov dword [esp + 0xa8], eax
mov ebx, dword [esp + 0x19c]
mov dword [esp], ebx
mov ebx, dword [esp + 0x1a0]
mov dword [esp + 4], ebx
mov dword [esp + 0xe0], esi
mov dword [esp + 8], esi
mov dword [esp + 0xe4], ebp
mov dword [esp + 0xc], ebp
call fcn.004a3240
mov edi, dword [esp + 0x3c]
mov esi, dword [esp + 0x10]
mov dword [esp + 0x19c], esi
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x1a0], ecx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x11c], ebx
mov ebx, dword [esp + 0x118]
cmp ebx, 0
je 0x4a37fa
mov dword [esp], 0x5dfb00
call fcn.0040f320
mov eax, dword [esp + 4]
mov dword [esp + 0x8c], eax
mov ebp, dword [esp + 0x154]
mov dword [eax + 4], ebp
mov ebp, dword [esp + 0x150]
cmp byte [0x6dae38], 0
jne 0x4a37e2
mov dword [eax], ebp
mov ebp, dword [esp + 0x124]
mov dword [eax + 0xc], ebp
mov ebp, dword [esp + 0x120]
cmp byte [0x6dae38], 0
jne 0x4a37c7
mov dword [eax + 8], ebp
mov ebp, dword [esp + 0xe4]
mov dword [eax + 0x14], ebp
mov ebp, dword [esp + 0xe0]
cmp byte [0x6dae38], 0
jne 0x4a37ac
mov dword [eax + 0x10], ebp
mov ebp, dword [esp + 0x1a0]
mov dword [eax + 0x1c], ebp
mov ebp, dword [esp + 0x19c]
cmp byte [0x6dae38], 0
jne 0x4a3794
mov dword [eax + 0x18], ebp
xor ebp, ebp
mov dword [eax + 0x20], ebp
mov dword [eax + 0x24], ebp
mov ebx, dword [0x61b6b0]
mov dword [esp + 0x1ac], ebx
mov ebx, dword [0x61b6b4]
mov dword [esp + 0x1b0], ebx
mov ebx, dword [0x61b6b8]
mov dword [esp + 0x1b4], ebx
mov ebx, dword [0x61b6bc]
mov dword [esp + 0x1b8], ebx
mov dword [esp + 0x1c0], eax
mov dword [esp + 0x1bc], 0x6b1d90
add esp, 0x190
ret
lea esi, [eax + 0x18]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040fcf0
mov eax, dword [esp + 0x8c]
jmp 0x4a373f
lea esi, [eax + 0x10]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040fcf0
mov eax, dword [esp + 0x8c]
jmp 0x4a3722
lea esi, [eax + 8]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040fcf0
mov eax, dword [esp + 0x8c]
jmp 0x4a3701
mov dword [esp], eax
mov dword [esp + 4], ebp
call fcn.0040fcf0
mov eax, dword [esp + 0x8c]
jmp 0x4a36e0
cmp edi, 0
jne 0x4a45df
cmp ecx, 0
je 0x4a39a8
mov dword [esp], 0x5dfb00
call fcn.0040f320
mov eax, dword [esp + 4]
mov dword [esp + 0x8c], eax
mov ebp, dword [esp + 0x154]
mov dword [eax + 4], ebp
mov ebp, dword [esp + 0x150]
cmp byte [0x6dae38], 0
jne 0x4a3990
mov dword [eax], ebp
mov ebp, dword [esp + 0x124]
mov dword [eax + 0xc], ebp
mov ebp, dword [esp + 0x120]
cmp byte [0x6dae38], 0
jne 0x4a3975
mov dword [eax + 8], ebp
xor ebp, ebp
mov dword [eax + 0x10], ebp
mov dword [eax + 0x14], ebp
mov ebp, dword [esp + 0x1a0]
mov dword [eax + 0x1c], ebp
mov ebp, dword [esp + 0x19c]
cmp byte [0x6dae38], 0
jne 0x4a3961
mov dword [eax + 0x18], ebp
mov dword [esp], 0
mov ebx, 0x5f8e20
mov dword [esp + 4], ebx
mov dword [esp + 8], 0xe
mov ebx, dword [esp + 0x19c]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x1a0]
mov dword [esp + 0x10], ebx
call fcn.00440830
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x8c]
cmp ebx, 0
je 0x4a395a
mov dword [esp + 0x14c], eax
mov dword [ebx + 0x24], eax
mov dword [esp + 0x148], ecx
cmp byte [0x6dae38], 0
jne 0x4a3949
mov dword [ebx + 0x20], ecx
mov eax, dword [esp + 0x8c]
mov ebx, dword [0x61b6c0]
mov dword [esp + 0x1ac], ebx
mov ebx, dword [0x61b6c4]
mov dword [esp + 0x1b0], ebx
mov ebx, dword [0x61b6c8]
mov dword [esp + 0x1b4], ebx
mov ebx, dword [0x61b6cc]
mov dword [esp + 0x1b8], ebx
mov dword [esp + 0x1c0], eax
mov dword [esp + 0x1bc], 0x6b1d90
add esp, 0x190
ret
lea esi, [ebx + 0x20]
mov dword [esp], esi
mov dword [esp + 4], ecx
call fcn.0040fcf0
jmp 0x4a38f5
mov dword [ebx], eax
jmp 0x4a38d8
lea esi, [eax + 0x18]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040fcf0
jmp 0x4a388d
lea esi, [eax + 8]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040fcf0
mov eax, dword [esp + 0x8c]
jmp 0x4a3864
mov dword [esp], eax
mov dword [esp + 4], ebp
call fcn.0040fcf0
mov eax, dword [esp + 0x8c]
jmp 0x4a3843
cmp byte [esp + 0x32], 0
je 0x4a45ba
mov ebx, dword [esp + 0x74]
cmp ebx, 0xc
jge 0x4a45ba
mov ebx, dword [esp + 0x74]
add ebx, 0xc
mov dword [esp + 0x74], ebx
mov edi, dword [esp + 0x60]
mov ecx, dword [esp + 0x38]
cmp edi, 2
jne 0x4a4570
mov ebp, ecx
sar ebp, 0x1f
and ebp, 3
mov ebx, ecx
add ebx, ebp
and ebx, 3
sub ebx, ebp
cmp ebx, 0
jne 0x4a3a57
mov dword [esp + 0x7c], ecx
mov eax, 0x51eb851f
mov ebx, edx
imul dword [esp + 0x7c]
mov dword [esp + 0x7c], edx
mov edx, ebx
mov ebx, dword [esp + 0x7c]
sar ebx, 5
mov ebp, ecx
sar ebp, 0x1f
sub ebx, ebp
imul ebx, ebx, 0x64
mov ebp, ecx
sub ebp, ebx
cmp ebp, 0
jne 0x4a45b0
mov dword [esp + 0x7c], ecx
mov eax, 0x51eb851f
imul dword [esp + 0x7c]
mov dword [esp + 0x7c], edx
mov ebx, dword [esp + 0x7c]
sar ebx, 7
mov ebp, ecx
sar ebp, 0x1f
sub ebx, ebp
imul ebx, ebx, 0x190
mov ebp, ecx
sub ebp, ebx
cmp ebp, 0
je 0x4a45b0
xor eax, eax
cmp al, 0
je 0x4a4570
mov eax, 0x1d
mov ebx, dword [esp + 0x78]
cmp eax, ebx
jge 0x4a3b97
mov dword [esp], 0x5dfb00
call fcn.0040f320
mov eax, dword [esp + 4]
mov dword [esp + 0x8c], eax
mov ebp, dword [esp + 0x154]
mov dword [eax + 4], ebp
mov ebp, dword [esp + 0x150]
cmp byte [0x6dae38], 0
jne 0x4a3b7f
mov dword [eax], ebp
mov ebp, dword [esp + 0x124]
mov dword [eax + 0xc], ebp
mov ebp, dword [esp + 0x120]
cmp byte [0x6dae38], 0
jne 0x4a3b64
mov dword [eax + 8], ebp
xor ebp, ebp
mov dword [eax + 0x10], ebp
mov dword [eax + 0x14], ebp
mov ebp, dword [esp + 0x1a0]
mov dword [eax + 0x1c], ebp
mov ebp, dword [esp + 0x19c]
cmp byte [0x6dae38], 0
jne 0x4a3b4c
mov dword [eax + 0x18], ebp
mov ebp, 0x5fa101
mov dword [eax + 0x20], ebp
mov dword [eax + 0x24], 0x12
mov ebx, dword [0x61b680]
mov dword [esp + 0x1ac], ebx
mov ebx, dword [0x61b684]
mov dword [esp + 0x1b0], ebx
mov ebx, dword [0x61b688]
mov dword [esp + 0x1b4], ebx
mov ebx, dword [0x61b68c]
mov dword [esp + 0x1b8], ebx
mov dword [esp + 0x1c0], eax
mov dword [esp + 0x1bc], 0x6b1d90
add esp, 0x190
ret
lea esi, [eax + 0x18]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040fcf0
mov eax, dword [esp + 0x8c]
jmp 0x4a3af0
lea esi, [eax + 8]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040fcf0
mov eax, dword [esp + 0x8c]
jmp 0x4a3acb
mov dword [esp], eax
mov dword [esp + 4], ebp
call fcn.0040fcf0
mov eax, dword [esp + 0x8c]
jmp 0x4a3aaa
mov ebx, dword [esp + 0x80]
xor ebp, ebp
cmp ebx, ebp
je 0x4a3c32
mov ebx, dword [esp + 0x38]
mov dword [esp], ebx
mov ebx, dword [esp + 0x60]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x78]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x74]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x44]
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0x54]
mov dword [esp + 0x18], ebx
mov ebx, dword [esp + 0x80]
mov dword [esp + 0x1c], ebx
call fcn.004a8730
mov ebp, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x1ac], ebp
mov dword [esp + 0x1b0], edx
mov dword [esp + 0x1b4], ecx
mov dword [esp + 0x1b8], eax
xor ebx, ebx
mov dword [esp + 0x1bc], ebx
mov dword [esp + 0x1c0], ebx
add esp, 0x190
ret
mov ebx, dword [esp + 0x34]
cmp ebx, 0xffffffff
je 0x4a4042
mov ebx, dword [esp + 0x38]
mov dword [esp], ebx
mov ebx, dword [esp + 0x60]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x78]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x74]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x44]
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0x54]
mov dword [esp + 0x18], ebx
mov ebx, dword [0x6c5874]
mov dword [esp + 0x1c], ebx
call fcn.004a8730
mov edx, dword [esp + 0x20]
mov ebp, dword [esp + 0x24]
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x188], ebx
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x18c], ebx
mov esi, edx
mov eax, dword [esp + 0x34]
cdq
mov ebx, eax
mov ecx, edx
mov eax, esi
mov edx, ebp
sub eax, ebx
sbb edx, ecx
mov ebx, dword [esp + 0x1a8]
mov dword [esp], ebx
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], edx
add eax, 0x886e0900
adc edx, 0xfffffff1
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call fcn.004a9100
mov esi, dword [esp + 0x9c]
mov edi, dword [esp + 0xc]
mov dword [esp + 0xf0], edi
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xf4], ecx
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x34]
cmp ebx, ebp
jne 0x4a3d94
cmp esi, 0
je 0x4a3d45
cmp ecx, esi
jne 0x4a3d94
mov dword [esp], edi
mov dword [esp + 4], ecx
mov ebp, dword [esp + 0x98]
mov dword [esp + 8], ebp
mov dword [esp + 0xc], esi
call fcn.004535f0
mov esi, dword [esp + 0x9c]
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x4a3d94
mov eax, dword [esp + 0x1a8]
mov ebx, dword [esp + 0x180]
mov dword [esp + 0x1ac], ebx
mov ebx, dword [esp + 0x184]
mov dword [esp + 0x1b0], ebx
mov ebx, dword [esp + 0x188]
mov dword [esp + 0x1b4], ebx
mov dword [esp + 0x1b8], eax
xor ebx, ebx
mov dword [esp + 0x1bc], ebx
mov dword [esp + 0x1c0], ebx
add esp, 0x190
ret
mov ebx, dword [esp + 0x98]
mov dword [esp + 0x100], ebx
mov dword [esp + 0x104], esi
mov ebx, dword [esp + 0x34]
mov dword [esp + 0x48], ebx
mov dword [esp], 0x5e21c0
call fcn.0040f320
mov ecx, dword [esp + 4]
mov edi, ecx
cmp ecx, 0
je 0x4a403b
xor eax, eax
call fcn.004539b3
mov dword [esp + 0x90], ecx
mov ebp, dword [esp + 0x104]
mov dword [ecx + 4], ebp
mov ebp, dword [esp + 0x100]
cmp byte [0x6dae38], 0
jne 0x4a402a
mov dword [ecx], ebp
mov dword [esp], 0x5bdf80
call fcn.0040f320
mov eax, dword [esp + 4]
mov ebp, dword [0x61b690]
mov dword [eax], ebp
mov ebp, dword [0x61b694]
mov dword [eax + 4], ebp
mov ebp, dword [0x61b698]
mov dword [eax + 8], ebp
movzx ebp, byte [0x61b69c]
xchg ebp, ebx
mov byte [eax + 0xc], bl
xchg ebp, ebx
mov dword [esp + 0x94], eax
mov ebp, dword [esp + 0x104]
mov dword [eax + 4], ebp
mov ebp, dword [esp + 0x100]
cmp byte [0x6dae38], 0
jne 0x4a4012
mov dword [eax], ebp
mov ecx, dword [esp + 0x48]
mov dword [eax + 8], ecx
mov edx, 1
mov ecx, 1
mov ebx, dword [esp + 0x90]
cmp ebx, 0
je 0x4a400b
mov dword [esp + 0x168], edx
mov dword [ebx + 0xc], edx
mov dword [esp + 0x16c], ecx
mov dword [ebx + 0x10], ecx
mov dword [esp + 0x164], eax
cmp byte [0x6dae38], 0
jne 0x4a3ff7
mov dword [ebx + 8], eax
mov dword [esp], 0x5bdfc0
call fcn.0040f320
mov ecx, dword [esp + 0x90]
mov eax, dword [esp + 4]
mov ebp, dword [0x61b400]
mov dword [eax], ebp
mov ebp, dword [0x61b404]
mov dword [eax + 4], ebp
movzx ebp, byte [0x61b408]
xchg ebp, ebx
mov byte [eax + 8], bl
xchg ebp, ebx
movzx ebp, byte [0x61b409]
xchg ebp, ebx
mov byte [eax + 9], bl
xchg ebp, ebx
movzx ebp, byte [0x61b40a]
xchg ebp, ebx
mov byte [eax + 0xa], bl
xchg ebp, ebx
mov esi, 1
mov edx, 1
cmp ecx, 0
je 0x4a3ff0
mov dword [esp + 0x15c], esi
mov dword [ecx + 0x18], esi
mov dword [esp + 0x160], edx
mov dword [ecx + 0x1c], edx
mov dword [esp + 0x158], eax
cmp byte [0x6dae38], 0
jne 0x4a3fd5
mov dword [ecx + 0x14], eax
xor ebp, ebp
mov edx, 0x80000000
mov dword [ecx + 0x20], ebp
mov dword [ecx + 0x24], edx
mov ebp, 0xffffffff
mov edx, 0x7fffffff
mov dword [ecx + 0x28], ebp
mov dword [ecx + 0x2c], edx
cmp dword [ecx + 0xc], 0
jbe 0x4a3fce
mov ebp, dword [ecx + 8]
mov dword [esp + 0x84], ecx
cmp byte [0x6dae38], 0
jne 0x4a3fb6
mov dword [ecx + 0x30], ebp
mov ebx, dword [esp + 0x180]
mov dword [esp + 0x1ac], ebx
mov ebx, dword [esp + 0x184]
mov dword [esp + 0x1b0], ebx
mov ebx, dword [esp + 0x188]
mov dword [esp + 0x1b4], ebx
mov dword [esp + 0x1b8], ecx
xor ebx, ebx
mov dword [esp + 0x1bc], ebx
mov dword [esp + 0x1c0], ebx
add esp, 0x190
ret
lea esi, [ecx + 0x30]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040fcf0
mov ecx, dword [esp + 0x84]
jmp 0x4a3f6e
call fcn.004291a0
ud2
lea esi, [ecx + 0x14]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0040fcf0
mov ecx, dword [esp + 0x90]
jmp 0x4a3f35
mov dword [ecx], eax
jmp 0x4a3f0a
lea esi, [ebx + 8]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0040fcf0
jmp 0x4a3ea5
mov dword [ebx], eax
jmp 0x4a3e7a
mov dword [esp], eax
mov dword [esp + 4], ebp
call fcn.0040fcf0
mov eax, dword [esp + 0x94]
jmp 0x4a3e59
mov dword [esp], ecx
mov dword [esp + 4], ebp
call fcn.0040fcf0
jmp 0x4a3dfa
mov dword [ecx], eax
jmp 0x4a3dcc
mov ebx, dword [esp + 0x9c]
cmp ebx, 0
je 0x4a44e6
mov ebx, dword [esp + 0x38]
mov dword [esp], ebx
mov ebx, dword [esp + 0x60]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x78]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x74]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x44]
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0x54]
mov dword [esp + 0x18], ebx
mov ebx, dword [0x6c5874]
mov dword [esp + 0x1c], ebx
call fcn.004a8730
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x178], ebx
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x17c], ebx
mov ebx, dword [esp + 0x1a8]
mov dword [esp], ebx
mov ebx, dword [esp + 0x98]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x9c]
mov dword [esp + 8], ebx
mov dword [esp + 0x170], eax
mov dword [esp + 0x174], edx
add eax, 0x886e0900
adc edx, 0xfffffff1
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edx
call fcn.004a9600
mov ebp, dword [esp + 0x9c]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x4c], ecx
movzx ebx, byte [esp + 0x19]
cmp bl, 0
je 0x4a4174
mov esi, dword [esp + 0x170]
mov ebp, dword [esp + 0x174]
mov eax, ecx
cdq
mov ebx, eax
mov ecx, edx
mov eax, esi
mov edx, ebp
sub eax, ebx
sbb edx, ecx
mov ecx, edx
mov edx, eax
mov eax, dword [esp + 0x1a8]
mov dword [esp + 0x1ac], edx
mov dword [esp + 0x1b0], ecx
mov ebx, dword [esp + 0x178]
mov dword [esp + 0x1b4], ebx
mov dword [esp + 0x1b8], eax
xor ebx, ebx
mov dword [esp + 0x1bc], ebx
mov dword [esp + 0x1c0], ebx
add esp, 0x190
ret
cmp ebp, 3
jle 0x4a44da
cmp ebp, 3
jb 0x4a44df
mov esi, dword [esp + 0x98]
mov eax, 3
cmp eax, 3
jne 0x4a44da
mov dword [esp + 0x128], esi
mov dword [esp], esi
mov dword [esp + 0x12c], eax
mov dword [esp + 4], eax
mov ebp, 0x5f68d6
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 3
call fcn.004535f0
mov ebp, dword [esp + 0x9c]
mov ecx, dword [esp + 0x4c]
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x4a44da
cmp ebp, 3
jb 0x4a44d3
mov ecx, ebp
sub ecx, 3
mov eax, dword [esp + 0x98]
cmp ecx, 0
je 0x4a41fc
add eax, 3
mov dword [esp + 0x140], eax
mov dword [esp], eax
mov dword [esp + 0x144], ecx
mov dword [esp + 4], ecx
call fcn.004a0920
mov ebp, dword [esp + 0x9c]
mov ecx, dword [esp + 8]
imul ecx, ecx, 0xe10
mov ebx, dword [esp + 0x98]
mov dword [esp + 0xf8], ebx
mov dword [esp + 0xfc], ebp
mov dword [esp + 0x50], ecx
mov dword [esp], 0x5e21c0
call fcn.0040f320
mov ecx, dword [esp + 4]
mov edi, ecx
cmp ecx, 0
je 0x4a44cc
xor eax, eax
call fcn.004539b3
mov dword [esp + 0x90], ecx
mov ebp, dword [esp + 0xfc]
mov dword [ecx + 4], ebp
mov ebp, dword [esp + 0xf8]
cmp byte [0x6dae38], 0
jne 0x4a44bb
mov dword [ecx], ebp
mov dword [esp], 0x5bdf80
call fcn.0040f320
mov eax, dword [esp + 4]
mov ebp, dword [0x61b6a0]
mov dword [eax], ebp
mov ebp, dword [0x61b6a4]
mov dword [eax + 4], ebp
mov ebp, dword [0x61b6a8]
mov dword [eax + 8], ebp
movzx ebp, byte [0x61b6ac]
xchg ebp, ebx
mov byte [eax + 0xc], bl
xchg ebp, ebx
mov dword [esp + 0x94], eax
mov ebp, dword [esp + 0xfc]
mov dword [eax + 4], ebp
mov ebp, dword [esp + 0xf8]
cmp byte [0x6dae38], 0
jne 0x4a44a3
mov dword [eax], ebp
mov ecx, dword [esp + 0x50]
mov dword [eax + 8], ecx
mov edx, 1
mov ecx, 1
mov ebx, dword [esp + 0x90]
cmp ebx, 0
je 0x4a449c
mov dword [esp + 0x168], edx
mov dword [ebx + 0xc], edx
mov dword [esp + 0x16c], ecx
mov dword [ebx + 0x10], ecx
mov dword [esp + 0x164], eax
cmp byte [0x6dae38], 0
jne 0x4a4488
mov dword [ebx + 8], eax
mov dword [esp], 0x5bdfc0
call fcn.0040f320
mov ecx, dword [esp + 0x90]
mov eax, dword [esp + 4]
mov ebp, dword [0x61b410]
mov dword [eax], ebp
mov ebp, dword [0x61b414]
mov dword [eax + 4], ebp
movzx ebp, byte [0x61b418]
xchg ebp, ebx
mov byte [eax + 8], bl
xchg ebp, ebx
movzx ebp, byte [0x61b419]
xchg ebp, ebx
mov byte [eax + 9], bl
xchg ebp, ebx
movzx ebp, byte [0x61b41a]
xchg ebp, ebx
mov byte [eax + 0xa], bl
xchg ebp, ebx
mov esi, 1
mov edx, 1
cmp ecx, 0
je 0x4a4481
mov dword [esp + 0x15c], esi
mov dword [ecx + 0x18], esi
mov dword [esp + 0x160], edx
mov dword [ecx + 0x1c], edx
mov dword [esp + 0x158], eax
cmp byte [0x6dae38], 0
jne 0x4a4466
mov dword [ecx + 0x14], eax
xor ebp, ebp
mov edx, 0x80000000
mov dword [ecx + 0x20], ebp
mov dword [ecx + 0x24], edx
mov ebp, 0xffffffff
mov edx, 0x7fffffff
mov dword [ecx + 0x28], ebp
mov dword [ecx + 0x2c], edx
mov eax, ecx
cmp dword [ecx + 0xc], 0
jbe 0x4a445f
mov ebp, dword [ecx + 8]
mov dword [esp + 0x88], ecx
cmp byte [0x6dae38], 0
jne 0x4a4447
mov dword [ecx + 0x30], ebp
mov ebx, dword [esp + 0x170]
mov dword [esp + 0x1ac], ebx
mov ebx, dword [esp + 0x174]
mov dword [esp + 0x1b0], ebx
mov ebx, dword [esp + 0x178]
mov dword [esp + 0x1b4], ebx
mov dword [esp + 0x1b8], eax
xor ebx, ebx
mov dword [esp + 0x1bc], ebx
mov dword [esp + 0x1c0], ebx
add esp, 0x190
ret
lea esi, [ecx + 0x30]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040fcf0
mov eax, dword [esp + 0x88]
jmp 0x4a43ff
call fcn.004291a0
ud2
lea esi, [ecx + 0x14]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0040fcf0
mov ecx, dword [esp + 0x90]
jmp 0x4a43c4
mov dword [ecx], eax
jmp 0x4a4399
lea esi, [ebx + 8]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0040fcf0
jmp 0x4a4334
mov dword [ebx], eax
jmp 0x4a4309
mov dword [esp], eax
mov dword [esp + 4], ebp
call fcn.0040fcf0
mov eax, dword [esp + 0x94]
jmp 0x4a42e8
mov dword [esp], ecx
mov dword [esp + 4], ebp
call fcn.0040fcf0
jmp 0x4a4289
mov dword [ecx], eax
jmp 0x4a425b
call fcn.00429210
ud2
jmp 0x4a4227
call fcn.00429210
ud2
mov ebx, dword [esp + 0x38]
mov dword [esp], ebx
mov ebx, dword [esp + 0x60]
mov dword [esp + 4], ebx
mov ebx, dword [esp + 0x78]
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x74]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x44]
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0x54]
mov dword [esp + 0x18], ebx
mov ebx, dword [esp + 0x1a4]
mov dword [esp + 0x1c], ebx
call fcn.004a8730
mov ebp, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x1ac], ebp
mov dword [esp + 0x1b0], edx
mov dword [esp + 0x1b4], ecx
mov dword [esp + 0x1b8], eax
xor ebx, ebx
mov dword [esp + 0x1bc], ebx
mov dword [esp + 0x1c0], ebx
add esp, 0x190
ret
mov ebx, edi
mov ebp, 0x6b4a80
cmp edi, 0xd
jae 0x4a45a9
shl ebx, 2
add ebp, ebx
mov ecx, dword [ebp]
mov ebx, edi
dec ebx
mov ebp, 0x6b4a80
cmp ebx, 0xd
jae 0x4a45a2
shl ebx, 2
add ebp, ebx
mov ebx, dword [ebp]
mov eax, ecx
sub eax, ebx
jmp 0x4a3a67
call fcn.004291a0
ud2
call fcn.004291a0
ud2
mov eax, 1
jmp 0x4a3a59
cmp byte [esp + 0x33], 0
je 0x4a39cb
mov ebx, dword [esp + 0x74]
cmp ebx, 0xc
jne 0x4a39cb
mov dword [esp + 0x74], 0
jmp 0x4a39cb
mov ebx, dword [esp + 0xa0]
mov dword [esp + 0x194], ebx
mov ebx, dword [esp + 0xa4]
mov dword [esp + 0x198], ebx
xor ebx, ebx
mov dword [esp + 0xe8], ebx
mov dword [esp + 0xec], ebx
mov eax, edi
and eax, 0xffff
cmp eax, 0x103
jg 0x4a5718
cmp eax, 0x1c
jg 0x4a5379
cmp eax, 0x18
jg 0x4a5346
cmp eax, 0x16
jg 0x4a532f
cmp eax, 0x15
jne 0x4a4adb
cmp ecx, 3
jl 0x4a4a32
cmp ecx, 3
jb 0x4a4ad4
mov eax, 3
cmp eax, 3
jne 0x4a4a32
mov dword [esp + 0x128], esi
mov dword [esp], esi
mov dword [esp + 0x12c], eax
mov dword [esp + 4], eax
mov ebp, 0x5f697b
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 3
call fcn.004535f0
mov esi, dword [esp + 0x19c]
mov ecx, dword [esp + 0x1a0]
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x4a4a32
mov ebx, dword [0x6c5874]
mov dword [esp + 0x80], ebx
cmp ecx, 3
jb 0x4a4a2b
sub ecx, 3
mov eax, esi
cmp ecx, 0
je 0x4a46cb
add eax, 3
mov dword [esp + 0x1a0], ecx
mov dword [esp + 0x19c], eax
mov ebx, dword [esp + 0xdc]
cmp ebx, 0
je 0x4a48ca
mov dword [esp], 0x5dfb00
call fcn.0040f320
mov eax, dword [esp + 4]
mov dword [esp + 0x8c], eax
mov ebp, dword [esp + 0x154]
mov dword [eax + 4], ebp
mov ebp, dword [esp + 0x150]
cmp byte [0x6dae38], 0
jne 0x4a48b2
mov dword [eax], ebp
mov ebp, dword [esp + 0x124]
mov dword [eax + 0xc], ebp
mov ebp, dword [esp + 0x120]
cmp byte [0x6dae38], 0
jne 0x4a4897
mov dword [eax + 8], ebp
mov ebp, dword [esp + 0xac]
mov dword [eax + 0x14], ebp
mov ebp, dword [esp + 0xa8]
cmp byte [0x6dae38], 0
jne 0x4a487c
mov dword [eax + 0x10], ebp
mov ebp, dword [esp + 0x1a0]
mov dword [eax + 0x1c], ebp
mov ebp, dword [esp + 0x19c]
cmp byte [0x6dae38], 0
jne 0x4a4868
mov dword [eax + 0x18], ebp
mov dword [esp], 0
mov ebx, 0x5f677b
mov dword [esp + 4], ebx
mov dword [esp + 8], 2
mov ebx, dword [esp + 0xd8]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0xdc]
mov dword [esp + 0x10], ebx
mov ebx, 0x5f89d4
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], 0xd
call fcn.004408b0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x8c]
cmp ebx, 0
je 0x4a4861
mov dword [esp + 0x144], ecx
mov dword [ebx + 0x24], ecx
mov dword [esp + 0x140], eax
cmp byte [0x6dae38], 0
jne 0x4a4850
mov dword [ebx + 0x20], eax
mov eax, dword [esp + 0x8c]
mov ebx, dword [0x61b660]
mov dword [esp + 0x1ac], ebx
mov ebx, dword [0x61b664]
mov dword [esp + 0x1b0], ebx
mov ebx, dword [0x61b668]
mov dword [esp + 0x1b4], ebx
mov ebx, dword [0x61b66c]
mov dword [esp + 0x1b8], ebx
mov dword [esp + 0x1c0], eax
mov dword [esp + 0x1bc], 0x6b1d90
add esp, 0x190
ret
lea esi, [ebx + 0x20]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0040fcf0
jmp 0x4a47fc
mov dword [ebx], eax
jmp 0x4a47df
lea esi, [eax + 0x18]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040fcf0
jmp 0x4a4783
lea esi, [eax + 0x10]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040fcf0
mov eax, dword [esp + 0x8c]
jmp 0x4a4762
lea esi, [eax + 8]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040fcf0
mov eax, dword [esp + 0x8c]
jmp 0x4a4741
mov dword [esp], eax
mov dword [esp + 4], ebp
call fcn.0040fcf0
mov eax, dword [esp + 0x8c]
jmp 0x4a4720
mov ebx, dword [esp + 0x118]
cmp ebx, 0
je 0x4a35ae
mov dword [esp], 0x5dfb00
call fcn.0040f320
mov eax, dword [esp + 4]
mov dword [esp + 0x8c], eax
mov ebp, dword [esp + 0x154]
mov dword [eax + 4], ebp
mov ebp, dword [esp + 0x150]
cmp byte [0x6dae38], 0
jne 0x4a4a13
mov dword [eax], ebp
mov ebp, dword [esp + 0x124]
mov dword [eax + 0xc], ebp
mov ebp, dword [esp + 0x120]
cmp byte [0x6dae38], 0
jne 0x4a49f8
mov dword [eax + 8], ebp
mov ebp, dword [esp + 0xac]
mov dword [eax + 0x14], ebp
mov ebp, dword [esp + 0xa8]
cmp byte [0x6dae38], 0
jne 0x4a49dd
mov dword [eax + 0x10], ebp
mov ebp, dword [esp + 0x1a0]
mov dword [eax + 0x1c], ebp
mov ebp, dword [esp + 0x19c]
cmp byte [0x6dae38], 0
jne 0x4a49c5
mov dword [eax + 0x18], ebp
xor ebp, ebp
mov dword [eax + 0x20], ebp
mov dword [eax + 0x24], ebp
mov ebx, dword [0x61b670]
mov dword [esp + 0x1ac], ebx
mov ebx, dword [0x61b674]
mov dword [esp + 0x1b0], ebx
mov ebx, dword [0x61b678]
mov dword [esp + 0x1b4], ebx
mov ebx, dword [0x61b67c]
mov dword [esp + 0x1b8], ebx
mov dword [esp + 0x1c0], eax
mov dword [esp + 0x1bc], 0x6b1d90
add esp, 0x190
ret
lea esi, [eax + 0x18]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040fcf0
mov eax, dword [esp + 0x8c]
jmp 0x4a4970
lea esi, [eax + 0x10]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040fcf0
mov eax, dword [esp + 0x8c]
jmp 0x4a4953
lea esi, [eax + 8]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040fcf0
mov eax, dword [esp + 0x8c]
jmp 0x4a4932
mov dword [esp], eax
mov dword [esp + 4], ebp
call fcn.0040fcf0
mov eax, dword [esp + 0x8c]
jmp 0x4a4911
call fcn.00429210
ud2
mov dword [esp], esi
mov dword [esp + 4], ecx
call fcn.004a6160
mov edi, dword [esp + 0x1a0]
mov eax, dword [esp + 8]
movzx ebx, byte [esp + 0xc]
cmp bl, 0
jne 0x4a4a72
mov ebx, dword [0x6c97c0]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6c97c4]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
cmp eax, edi
ja 0x4a4acd
mov ebp, dword [esp + 0x19c]
mov esi, eax
mov ecx, eax
cmp eax, edi
ja 0x4a4ac6
mov edx, edi
sub edx, eax
mov eax, dword [esp + 0x19c]
cmp edx, 0
je 0x4a4a97
add eax, ecx
mov dword [esp + 0x98], ebp
mov dword [esp + 0x9c], esi
mov dword [esp + 0x148], eax
mov dword [esp + 0x19c], eax
mov dword [esp + 0x14c], edx
mov dword [esp + 0x1a0], edx
jmp 0x4a46d9
call fcn.00429210
ud2
call fcn.00429210
ud2
call fcn.00429210
ud2
cmp eax, 0x16
jne 0x4a46d9
cmp edi, 0x16
je 0x4a52d7
cmp edi, 0x18
je 0x4a52d7
cmp edi, 0x19
je 0x4a52d7
xor ebx, ebx
mov dword [esp + 0xb0], ebx
mov dword [esp + 0xb4], ebx
xor ebx, ebx
mov dword [esp + 0x110], ebx
mov dword [esp + 0x114], ebx
xor ebx, ebx
mov dword [esp + 0x108], ebx
mov dword [esp + 0x10c], ebx
xor ebx, ebx
mov dword [esp + 0xb8], ebx
mov dword [esp + 0xbc], ebx
cmp edi, 0x19
je 0x4a5188
cmp edi, 0x1e
je 0x4a5188
cmp edi, 0x1d
je 0x4a50a1
cmp edi, 0x18
je 0x4a50a1
cmp edi, 0x1a
je 0x4a4ef9
cmp edi, 0x1f
je 0x4a4ef9
cmp edi, 0x17
je 0x4a4dc9
cmp edi, 0x1c
je 0x4a4dc9
cmp ecx, 5
jge 0x4a4bab
mov ebx, dword [0x6c97c0]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6c97c4]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
cmp ecx, 1
jb 0x4a4dc2
mov dword [esp + 0x14c], 1
mov dword [esp + 0x148], esi
cmp ecx, 3
jb 0x4a4dbb
mov ebx, esi
inc ebx
mov dword [esp + 0x144], 2
mov dword [esp + 0x140], ebx
cmp ecx, 5
jb 0x4a4db4
mov edx, esi
add edx, 3
mov ebp, 2
cmp ecx, 5
jb 0x4a4dad
sub ecx, 5
mov eax, esi
cmp ecx, 0
je 0x4a4c0d
add eax, 5
mov edi, ecx
mov esi, eax
mov ebx, dword [esp + 0x148]
mov dword [esp + 0xb0], ebx
mov ebx, dword [esp + 0x14c]
mov dword [esp + 0xb4], ebx
mov ecx, dword [esp + 0x140]
mov eax, dword [esp + 0x144]
mov dword [esp + 0x108], edx
mov dword [esp + 0x10c], ebp
mov ebx, 0x5f676f
mov dword [esp + 0xb8], ebx
mov dword [esp + 0xbc], 2
mov dword [esp + 0x19c], esi
mov dword [esp + 0x1a0], edi
mov dword [esp + 0x64], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x110], ecx
mov dword [esp], ecx
mov dword [esp + 0x114], eax
mov dword [esp + 4], eax
call fcn.004a0920
mov ebx, dword [esp + 8]
mov dword [esp + 0x70], ebx
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x11c], ebx
mov ebx, dword [esp + 0x118]
cmp ebx, 0
jne 0x4a4cfa
mov ebx, dword [esp + 0x108]
mov dword [esp], ebx
mov ebx, dword [esp + 0x10c]
mov dword [esp + 4], ebx
call fcn.004a0920
mov ebx, dword [esp + 8]
mov dword [esp + 0x64], ebx
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x11c], ebx
mov ebx, dword [esp + 0x118]
cmp ebx, 0
jne 0x4a4d3e
mov ebx, dword [esp + 0xb8]
mov dword [esp], ebx
mov ebx, dword [esp + 0xbc]
mov dword [esp + 4], ebx
call fcn.004a0920
mov ebx, dword [esp + 8]
mov dword [esp + 0x40], ebx
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x11c], ebx
mov ecx, dword [esp + 0x70]
imul ecx, ecx, 0x3c
add ecx, dword [esp + 0x64]
imul ecx, ecx, 0x3c
add ecx, dword [esp + 0x40]
mov dword [esp + 0x34], ecx
cmp dword [esp + 0xb4], 0
jbe 0x4a4da6
mov ebx, dword [esp + 0xb0]
movzx ebp, byte [ebx]
xchg ebp, eax
cmp al, 0x2b
xchg ebp, eax
je 0x4a46d9
xchg ebp, eax
cmp al, 0x2d
xchg ebp, eax
jne 0x4a4d87
mov ebx, ecx
neg ebx
mov dword [esp + 0x34], ebx
jmp 0x4a46d9
mov ebx, dword [0x6c97c0]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6c97c4]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
call fcn.004291a0
ud2
call fcn.00429210
ud2
call fcn.00429210
ud2
call fcn.00429210
ud2
call fcn.00429210
ud2
cmp ecx, 7
jge 0x4a4ded
mov ebx, dword [0x6c97c0]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6c97c4]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
cmp ecx, 1
jb 0x4a4ef2
mov dword [esp + 0x134], 1
mov edi, esi
cmp ecx, 3
jb 0x4a4eeb
mov ebx, esi
inc ebx
mov dword [esp + 0x14c], 2
mov dword [esp + 0x148], ebx
cmp ecx, 5
jb 0x4a4ee4
mov ebx, esi
add ebx, 3
mov dword [esp + 0x144], 2
mov dword [esp + 0x140], ebx
cmp ecx, 7
jb 0x4a4edd
mov edx, esi
add edx, 5
mov ebp, 2
cmp ecx, 7
jb 0x4a4ed6
sub ecx, 7
mov eax, esi
cmp ecx, 0
je 0x4a4e66
add eax, 7
mov dword [esp + 0x13c], ecx
mov esi, eax
mov dword [esp + 0xb0], edi
mov ebx, dword [esp + 0x134]
mov dword [esp + 0xb4], ebx
mov ecx, dword [esp + 0x148]
mov eax, dword [esp + 0x14c]
mov ebx, dword [esp + 0x140]
mov dword [esp + 0x108], ebx
mov ebx, dword [esp + 0x144]
mov dword [esp + 0x10c], ebx
mov dword [esp + 0xb8], edx
mov dword [esp + 0xbc], ebp
mov dword [esp + 0x19c], esi
mov ebx, dword [esp + 0x13c]
mov dword [esp + 0x1a0], ebx
jmp 0x4a4c6e
call fcn.00429210
ud2
call fcn.00429210
ud2
call fcn.00429210
ud2
call fcn.00429210
ud2
call fcn.00429210
ud2
cmp ecx, 9
jge 0x4a4f1d
mov ebx, dword [0x6c97c0]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6c97c4]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
cmp ecx, 3
jbe 0x4a509a
mov ebx, esi
add ebx, 3
movzx ebp, byte [ebx]
xchg ebp, eax
cmp al, 0x3a
xchg ebp, eax
jne 0x4a5074
cmp ecx, 6
jbe 0x4a5093
mov ebx, esi
add ebx, 6
movzx ebp, byte [ebx]
xchg ebp, eax
cmp al, 0x3a
xchg ebp, eax
jne 0x4a5074
cmp ecx, 1
jb 0x4a506d
mov dword [esp + 0x13c], 1
mov dword [esp + 0x138], esi
cmp ecx, 3
jb 0x4a5066
mov edi, esi
inc edi
mov dword [esp + 0x134], 2
cmp ecx, 6
jb 0x4a505f
mov ebx, esi
add ebx, 4
mov dword [esp + 0x14c], 2
mov dword [esp + 0x148], ebx
cmp ecx, 9
jb 0x4a5058
mov ebx, esi
add ebx, 7
mov dword [esp + 0x144], 2
mov dword [esp + 0x140], ebx
cmp ecx, 9
jb 0x4a5051
sub ecx, 9
mov eax, esi
cmp ecx, 0
je 0x4a4fdd
add eax, 9
mov ebp, ecx
mov edx, eax
mov ebx, dword [esp + 0x138]
mov dword [esp + 0xb0], ebx
mov ebx, dword [esp + 0x13c]
mov dword [esp + 0xb4], ebx
mov ecx, edi
mov eax, dword [esp + 0x134]
mov ebx, dword [esp + 0x148]
mov dword [esp + 0x108], ebx
mov ebx, dword [esp + 0x14c]
mov dword [esp + 0x10c], ebx
mov ebx, dword [esp + 0x140]
mov dword [esp + 0xb8], ebx
mov ebx, dword [esp + 0x144]
mov dword [esp + 0xbc], ebx
mov dword [esp + 0x19c], edx
mov dword [esp + 0x1a0], ebp
jmp 0x4a4c6e
call fcn.00429210
ud2
call fcn.00429210
ud2
call fcn.00429210
ud2
call fcn.00429210
ud2
call fcn.00429210
ud2
mov ebx, dword [0x6c97c0]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6c97c4]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
call fcn.004291a0
ud2
call fcn.004291a0
ud2
cmp ecx, 3
jge 0x4a50c5
mov ebx, dword [0x6c97c0]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6c97c4]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
cmp ecx, 1
jb 0x4a5181
mov dword [esp + 0x14c], 1
mov dword [esp + 0x148], esi
cmp ecx, 3
jb 0x4a517a
mov edi, esi
inc edi
mov dword [esp + 0x13c], 2
cmp ecx, 3
jb 0x4a5173
sub ecx, 3
mov eax, esi
cmp ecx, 0
je 0x4a5109
add eax, 3
mov ebp, ecx
mov edx, eax
mov ebx, dword [esp + 0x148]
mov dword [esp + 0xb0], ebx
mov ebx, dword [esp + 0x14c]
mov dword [esp + 0xb4], ebx
mov ecx, edi
mov eax, dword [esp + 0x13c]
mov ebx, 0x5f676f
mov dword [esp + 0x108], ebx
mov dword [esp + 0x10c], 2
mov ebx, 0x5f676f
mov dword [esp + 0xb8], ebx
mov dword [esp + 0xbc], 2
mov dword [esp + 0x19c], edx
mov dword [esp + 0x1a0], ebp
jmp 0x4a4c6e
call fcn.00429210
ud2
call fcn.00429210
ud2
call fcn.00429210
ud2
cmp ecx, 6
jge 0x4a51ac
mov ebx, dword [0x6c97c0]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6c97c4]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
cmp ecx, 3
jbe 0x4a52d0
mov ebx, esi
add ebx, 3
movzx ebp, byte [ebx]
xchg ebp, eax
cmp al, 0x3a
xchg ebp, eax
je 0x4a51e3
mov ebx, dword [0x6c97c0]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6c97c4]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
cmp ecx, 1
jb 0x4a52c9
mov dword [esp + 0x144], 1
mov dword [esp + 0x140], esi
cmp ecx, 3
jb 0x4a52c2
mov ebx, esi
inc ebx
mov dword [esp + 0x14c], 2
mov dword [esp + 0x148], ebx
cmp ecx, 6
jb 0x4a52bb
mov edi, esi
add edi, 4
mov dword [esp + 0x13c], 2
cmp ecx, 6
jb 0x4a52b4
sub ecx, 6
mov eax, esi
cmp ecx, 0
je 0x4a5247
add eax, 6
mov ebp, ecx
mov edx, eax
mov ebx, dword [esp + 0x140]
mov dword [esp + 0xb0], ebx
mov ebx, dword [esp + 0x144]
mov dword [esp + 0xb4], ebx
mov ecx, dword [esp + 0x148]
mov eax, dword [esp + 0x14c]
mov dword [esp + 0x108], edi
mov ebx, dword [esp + 0x13c]
mov dword [esp + 0x10c], ebx
mov ebx, 0x5f676f
mov dword [esp + 0xb8], ebx
mov dword [esp + 0xbc], 2
mov dword [esp + 0x19c], edx
mov dword [esp + 0x1a0], ebp
jmp 0x4a4c6e
call fcn.00429210
ud2
call fcn.00429210
ud2
call fcn.00429210
ud2
call fcn.00429210
ud2
call fcn.004291a0
ud2
cmp ecx, 1
jl 0x4a4aff
cmp ecx, 0
jbe 0x4a5328
movzx ebp, byte [esi]
xchg ebp, eax
cmp al, 0x5a
xchg ebp, eax
jne 0x4a4aff
cmp ecx, 1
jb 0x4a5321
dec ecx
mov eax, esi
cmp ecx, 0
je 0x4a5301
inc eax
mov dword [esp + 0x1a0], ecx
mov dword [esp + 0x19c], eax
mov ebx, dword [0x6c5874]
mov dword [esp + 0x80], ebx
jmp 0x4a46d9
call fcn.00429210
ud2
call fcn.004291a0
ud2
cmp eax, 0x17
je 0x4a4ae4
cmp eax, 0x18
je 0x4a4ae4
jmp 0x4a46d9
cmp eax, 0x1a
jg 0x4a5362
cmp eax, 0x19
je 0x4a4ae4
cmp eax, 0x1a
je 0x4a4ae4
jmp 0x4a46d9
cmp eax, 0x1b
je 0x4a4ae4
cmp eax, 0x1c
je 0x4a4ae4
jmp 0x4a46d9
cmp eax, 0x20
jg 0x4a545c
cmp eax, 0x1e
jg 0x4a539e
cmp eax, 0x1d
je 0x4a4ae4
cmp eax, 0x1e
je 0x4a4ae4
jmp 0x4a46d9
cmp eax, 0x1f
je 0x4a4ae4
cmp eax, 0x20
jne 0x4a46d9
mov eax, edi
sar eax, 0x10
inc eax
cmp ecx, eax
jge 0x4a53d9
mov ebx, dword [0x6c97c0]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6c97c4]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
mov dword [esp], esi
mov dword [esp + 4], ecx
mov dword [esp + 0x58], eax
mov dword [esp + 8], eax
call fcn.004a6510
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x54], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0xd8], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0xdc], ebx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x11c], ebx
mov ecx, dword [esp + 0x58]
mov eax, dword [esp + 0x1a0]
cmp ecx, eax
ja 0x4a5455
mov edx, eax
sub edx, ecx
mov eax, dword [esp + 0x19c]
cmp edx, 0
je 0x4a5442
add eax, ecx
mov dword [esp + 0x1a0], edx
mov dword [esp + 0x19c], eax
jmp 0x4a46d9
call fcn.00429210
ud2
cmp eax, 0x101
jg 0x4a5625
cmp eax, 0x21
jne 0x4a55b7
cmp ecx, 2
jl 0x4a559d
cmp ecx, 0
jbe 0x4a55b0
movzx ebp, byte [esi]
xchg ebp, eax
cmp al, 0x2e
xchg ebp, eax
jne 0x4a559d
cmp ecx, 1
jbe 0x4a55a9
mov ebx, esi
inc ebx
movzx ebp, byte [ebx]
xchg ebp, eax
cmp al, 0x30
xchg ebp, eax
jb 0x4a559d
cmp ecx, 1
jbe 0x4a55a2
mov ebx, esi
inc ebx
movzx ebp, byte [ebx]
xchg ebp, eax
cmp al, 0x39
xchg ebp, eax
ja 0x4a559d
xor eax, eax
cmp eax, 9
jge 0x4a5508
mov ebp, eax
inc ebp
cmp ebp, ecx
jge 0x4a5508
mov ebx, eax
inc ebx
cmp ebx, ecx
jae 0x4a5596
mov ebp, esi
add ebp, ebx
movzx ebx, byte [ebp]
cmp bl, 0x30
jb 0x4a5508
mov ebx, eax
inc ebx
cmp ebx, ecx
jae 0x4a558f
mov ebp, esi
add ebp, ebx
movzx ebx, byte [ebp]
cmp bl, 0x39
ja 0x4a5508
inc eax
cmp eax, 9
jl 0x4a54cb
mov dword [esp], esi
mov dword [esp + 4], ecx
mov ebx, eax
mov dword [esp + 0x6c], eax
inc ebx
mov dword [esp + 8], ebx
call fcn.004a6510
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x54], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0xd8], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0xdc], ebx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x11c], ebx
mov ecx, dword [esp + 0x6c]
inc ecx
mov eax, dword [esp + 0x1a0]
cmp ecx, eax
ja 0x4a5588
mov edx, eax
sub edx, ecx
mov eax, dword [esp + 0x19c]
cmp edx, 0
je 0x4a5575
add eax, ecx
mov dword [esp + 0x1a0], edx
mov dword [esp + 0x19c], eax
jmp 0x4a46d9
call fcn.00429210
ud2
call fcn.004291a0
ud2
call fcn.004291a0
ud2
jmp 0x4a46d9
call fcn.004291a0
ud2
call fcn.004291a0
ud2
call fcn.004291a0
ud2
cmp eax, 0x101
jne 0x4a46d9
mov ebx, dword [0x6c5f40]
mov dword [esp], ebx
mov ebx, dword [0x6c5f44]
mov dword [esp + 4], ebx
mov ebx, dword [0x6c5f48]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ecx
call fcn.004a0500
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x60], ebx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x19c], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x1a0], ebx
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
cmp eax, 0x102
jne 0x4a568f
mov ebx, dword [0x6c5f60]
mov dword [esp], ebx
mov ebx, dword [0x6c5f64]
mov dword [esp + 4], ebx
mov ebx, dword [0x6c5f68]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ecx
call fcn.004a0500
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x60], ebx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x19c], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x1a0], ebx
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
cmp eax, 0x103
jne 0x4a46d9
mov dword [esp], esi
mov dword [esp + 4], ecx
cmp edi, 0x104
je 0x4a5711
mov byte [esp + 8], 0
call fcn.004a3010
mov eax, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x19c], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x1a0], ebx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x11c], ebx
mov dword [esp + 0x60], eax
cmp eax, 0
jle 0x4a56f5
cmp eax, 0xc
jle 0x4a46d9
mov ebx, 0x5f6ed4
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], 5
jmp 0x4a46d9
mov byte [esp + 8], 1
jmp 0x4a56ae
cmp eax, 0x112
jg 0x4a5ae1
cmp eax, 0x107
jg 0x4a58dc
cmp eax, 0x105
jg 0x4a57a6
cmp eax, 0x104
je 0x4a569a
cmp eax, 0x105
jne 0x4a46d9
mov ebx, dword [0x6c5f30]
mov dword [esp], ebx
mov ebx, dword [0x6c5f34]
mov dword [esp + 4], ebx
mov ebx, dword [0x6c5f38]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ecx
call fcn.004a0500
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x19c], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x1a0], ebx
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
cmp eax, 0x106
jne 0x4a5808
mov ebx, dword [0x6c5f50]
mov dword [esp], ebx
mov ebx, dword [0x6c5f54]
mov dword [esp + 4], ebx
mov ebx, dword [0x6c5f58]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ecx
call fcn.004a0500
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x19c], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x1a0], ebx
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
cmp eax, 0x107
jne 0x4a46d9
cmp edi, 0x108
jne 0x4a5847
cmp ecx, 0
jle 0x4a5847
cmp ecx, 0
jbe 0x4a58d5
movzx ebp, byte [esi]
xchg ebp, eax
cmp al, 0x20
xchg ebp, eax
jne 0x4a5847
cmp ecx, 1
jb 0x4a58ce
dec ecx
mov eax, esi
cmp ecx, 0
je 0x4a5845
inc eax
mov esi, eax
mov dword [esp + 0x19c], esi
mov dword [esp], esi
mov dword [esp + 0x1a0], ecx
mov dword [esp + 4], ecx
cmp edi, 0x109
je 0x4a58c7
mov byte [esp + 8], 0
call fcn.004a3010
mov eax, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x19c], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x1a0], ebx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x11c], ebx
mov dword [esp + 0x78], eax
cmp eax, 0
jge 0x4a46d9
mov ebx, 0x5f69b4
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], 3
jmp 0x4a46d9
mov byte [esp + 8], 1
jmp 0x4a5869
call fcn.00429210
ud2
call fcn.004291a0
ud2
cmp eax, 0x109
jg 0x4a58fe
cmp eax, 0x108
je 0x4a5813
cmp eax, 0x109
je 0x4a5813
jmp 0x4a46d9
cmp eax, 0x111
jne 0x4a5a07
cmp ecx, 4
jl 0x4a59ba
mov dword [esp + 0xc8], esi
xor eax, eax
mov dword [esp + 0xcc], ecx
cmp ecx, eax
jg 0x4a59d9
xor eax, eax
cmp al, 0
je 0x4a59ba
cmp ecx, 4
jb 0x4a59b3
mov edx, 4
mov ebp, esi
cmp ecx, 4
jb 0x4a59ac
sub ecx, 4
mov eax, esi
cmp ecx, 0
je 0x4a5953
add eax, 4
mov dword [esp + 0x148], ebp
mov dword [esp + 0x14c], edx
mov dword [esp + 0x19c], eax
mov dword [esp + 0x1a0], ecx
mov dword [esp + 0xe8], ebp
mov dword [esp], ebp
mov dword [esp + 0xec], edx
mov dword [esp + 4], edx
call fcn.004a0920
mov ebx, dword [esp + 8]
mov dword [esp + 0x38], ebx
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
call fcn.00429210
ud2
call fcn.00429210
ud2
mov ebx, dword [0x6c97c0]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6c97c4]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
cmp eax, ecx
jae 0x4a5a00
mov ebp, esi
add ebp, eax
movzx ebx, byte [ebp]
cmp bl, 0x30
jb 0x4a59f9
cmp bl, 0x39
ja 0x4a59f9
mov eax, 1
jmp 0x4a592c
xor eax, eax
jmp 0x4a592c
call fcn.004291a0
ud2
cmp eax, 0x112
jne 0x4a46d9
cmp ecx, 2
jge 0x4a5a36
mov ebx, dword [0x6c97c0]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6c97c4]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
cmp ecx, 2
jb 0x4a5ada
mov edx, 2
mov ebp, esi
cmp ecx, 2
jb 0x4a5ad3
sub ecx, 2
mov eax, esi
cmp ecx, 0
je 0x4a5a5c
add eax, 2
mov dword [esp + 0x148], ebp
mov dword [esp + 0x14c], edx
mov dword [esp + 0x19c], eax
mov dword [esp + 0x1a0], ecx
mov dword [esp + 0xe8], ebp
mov dword [esp], ebp
mov dword [esp + 0xec], edx
mov dword [esp + 4], edx
call fcn.004a0920
mov eax, dword [esp + 8]
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x11c], ebx
cmp eax, 0x45
jl 0x4a5ac2
mov ebx, eax
add ebx, 0x76c
mov dword [esp + 0x38], ebx
jmp 0x4a46d9
mov ebx, eax
add ebx, 0x7d0
mov dword [esp + 0x38], ebx
jmp 0x4a46d9
call fcn.00429210
ud2
call fcn.00429210
ud2
cmp eax, 0x20d
jg 0x4a5c8a
cmp eax, 0x20b
jg 0x4a5bf6
cmp eax, 0x20a
jne 0x4a5b6d
mov dword [esp], esi
mov dword [esp + 4], ecx
mov byte [esp + 8], 0
call fcn.004a3010
mov eax, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x19c], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x1a0], ebx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x11c], ebx
mov dword [esp + 0x74], eax
cmp eax, 0
jl 0x4a5b51
cmp eax, 0x18
jl 0x4a46d9
mov ebx, 0x5f6c55
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], 4
jmp 0x4a46d9
cmp eax, 0x20b
jne 0x4a46d9
mov dword [esp], esi
mov dword [esp + 4], ecx
cmp edi, 0x20c
je 0x4a5bef
mov byte [esp + 8], 0
call fcn.004a3010
mov eax, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x19c], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x1a0], ebx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x11c], ebx
mov dword [esp + 0x74], eax
cmp eax, 0
jl 0x4a5bd3
cmp eax, 0xc
jle 0x4a46d9
mov ebx, 0x5f6c55
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], 4
jmp 0x4a46d9
mov byte [esp + 8], 1
jmp 0x4a5b8c
cmp eax, 0x20c
je 0x4a5b78
cmp eax, 0x20d
jne 0x4a46d9
mov dword [esp], esi
mov dword [esp + 4], ecx
cmp edi, 0x20e
je 0x4a5c83
mov byte [esp + 8], 0
call fcn.004a3010
mov eax, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x19c], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x1a0], ebx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x11c], ebx
mov dword [esp + 0x68], eax
cmp eax, 0
jl 0x4a5c67
cmp eax, 0x3c
jl 0x4a46d9
mov ebx, 0x5f715a
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], 6
jmp 0x4a46d9
mov byte [esp + 8], 1
jmp 0x4a5c20
cmp eax, 0x20f
jg 0x4a5edc
cmp eax, 0x20e
je 0x4a5c0c
cmp eax, 0x20f
jne 0x4a46d9
mov dword [esp], esi
mov dword [esp + 4], ecx
cmp edi, 0x210
je 0x4a5ed2
mov byte [esp + 8], 0
call fcn.004a3010
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x19c], edx
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x11c], ebx
mov dword [esp + 0x44], ecx
cmp ecx, 0
jl 0x4a5eb6
cmp ecx, 0x3c
jge 0x4a5eb6
mov dword [esp + 0x1a0], eax
cmp eax, 2
jl 0x4a5e7c
cmp eax, 0
jbe 0x4a5eaf
movzx ebp, byte [edx]
xchg ebp, eax
cmp al, 0x2e
xchg ebp, eax
jne 0x4a5e7c
mov dword [esp + 0xd0], edx
mov ecx, eax
mov eax, 1
mov dword [esp + 0xd4], ecx
cmp ecx, eax
jg 0x4a5e81
xor eax, eax
cmp al, 0
je 0x4a5e7c
mov ebx, dword [esp + 0x194]
mov dword [esp], ebx
mov ebx, dword [esp + 0x198]
mov dword [esp + 4], ebx
call fcn.0049ed30
mov esi, dword [esp + 0x1a0]
mov eax, dword [esp + 0x10]
and eax, 0xffff
cmp eax, 0x20
je 0x4a46d9
cmp eax, 0x21
je 0x4a46d9
mov eax, 2
cmp eax, esi
jge 0x4a5dc4
mov edi, dword [esp + 0x19c]
mov dword [esp + 0xc0], edi
mov dword [esp + 0xc4], esi
cmp esi, eax
jg 0x4a5e4e
xor ecx, ecx
cmp cl, 0
je 0x4a5dc4
inc eax
cmp eax, esi
jl 0x4a5d9b
mov ebx, dword [esp + 0x19c]
mov dword [esp], ebx
mov dword [esp + 4], esi
mov dword [esp + 0x5c], eax
mov dword [esp + 8], eax
call fcn.004a6510
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x54], ebx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0xd8], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0xdc], ebx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x118], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x11c], ebx
mov ecx, dword [esp + 0x5c]
mov eax, dword [esp + 0x1a0]
cmp ecx, eax
ja 0x4a5e47
mov edx, eax
sub edx, ecx
mov eax, dword [esp + 0x19c]
cmp edx, 0
je 0x4a5e34
add eax, ecx
mov dword [esp + 0x1a0], edx
mov dword [esp + 0x19c], eax
jmp 0x4a46d9
call fcn.00429210
ud2
cmp eax, esi
jae 0x4a5e75
mov ebp, edi
add ebp, eax
movzx ebx, byte [ebp]
cmp bl, 0x30
jb 0x4a5e6e
cmp bl, 0x39
ja 0x4a5e6e
mov ecx, 1
jmp 0x4a5dba
xor ecx, ecx
jmp 0x4a5dba
call fcn.004291a0
ud2
jmp 0x4a46d9
cmp eax, ecx
jae 0x4a5ea8
mov ebp, edx
add ebp, eax
movzx ebx, byte [ebp]
cmp bl, 0x30
jb 0x4a5ea1
cmp bl, 0x39
ja 0x4a5ea1
mov eax, 1
jmp 0x4a5d4d
xor eax, eax
jmp 0x4a5d4d
call fcn.004291a0
ud2
call fcn.004291a0
ud2
mov ebx, 0x5f716c
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], 6
jmp 0x4a5d07
mov byte [esp + 8], 1
jmp 0x4a5cc3
cmp eax, 0x210
je 0x4a5cab
cmp eax, 0x213
jne 0x4a6018
cmp ecx, 2
jge 0x4a5f16
mov ebx, dword [0x6c97c0]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6c97c4]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
cmp ecx, 2
jb 0x4a6011
mov edx, 2
mov ebp, esi
cmp ecx, 2
jb 0x4a600a
sub ecx, 2
mov eax, esi
cmp ecx, 0
je 0x4a5f3c
add eax, 2
mov dword [esp + 0x19c], eax
mov dword [esp + 0x1a0], ecx
mov dword [esp + 0xe8], ebp
mov esi, ebp
mov dword [esp + 0x148], ebp
mov dword [esp + 0xec], edx
mov eax, edx
cmp edx, 2
jne 0x4a5fae
mov dword [esp], esi
mov dword [esp + 0x14c], eax
mov dword [esp + 4], eax
mov ebp, 0x5f6785
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 2
call fcn.004535f0
mov esi, dword [esp + 0x148]
mov eax, dword [esp + 0x14c]
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x4a5fae
mov byte [esp + 0x33], 1
jmp 0x4a46d9
mov dword [esp + 0x14c], eax
cmp eax, 2
jne 0x4a5feb
mov dword [esp], esi
mov dword [esp + 4], eax
mov ebp, 0x5f67af
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 2
call fcn.004535f0
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x4a5feb
mov byte [esp + 0x32], 1
jmp 0x4a46d9
mov ebx, dword [0x6c97c0]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6c97c4]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
call fcn.00429210
ud2
call fcn.00429210
ud2
cmp eax, 0x214
jne 0x4a46d9
cmp ecx, 2
jge 0x4a6047
mov ebx, dword [0x6c97c0]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6c97c4]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
cmp ecx, 2
jb 0x4a6142
mov edx, 2
mov ebp, esi
cmp ecx, 2
jb 0x4a613b
sub ecx, 2
mov eax, esi
cmp ecx, 0
je 0x4a606d
add eax, 2
mov dword [esp + 0x19c], eax
mov dword [esp + 0x1a0], ecx
mov dword [esp + 0xe8], ebp
mov esi, ebp
mov dword [esp + 0x148], ebp
mov dword [esp + 0xec], edx
mov eax, edx
cmp edx, 2
jne 0x4a60df
mov dword [esp], esi
mov dword [esp + 0x14c], eax
mov dword [esp + 4], eax
mov ebp, 0x5f67f3
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 2
call fcn.004535f0
mov esi, dword [esp + 0x148]
mov eax, dword [esp + 0x14c]
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x4a60df
mov byte [esp + 0x33], 1
jmp 0x4a46d9
mov dword [esp + 0x14c], eax
cmp eax, 2
jne 0x4a611c
mov dword [esp], esi
mov dword [esp + 4], eax
mov ebp, 0x5f6801
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 2
call fcn.004535f0
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x4a611c
mov byte [esp + 0x32], 1
jmp 0x4a46d9
mov ebx, dword [0x6c97c0]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6c97c4]
mov dword [esp + 0x11c], ebx
jmp 0x4a46d9
call fcn.00429210
ud2
call fcn.00429210
ud2
call fcn.00429210
ud2
call fcn.004518d0
jmp fcn.004a34b0