Function at 0x4a1a70
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 0x4a4710
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.0049d2f0
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 0x4a4709
cmp ebp, eax
ja 0x4a4709
mov edx, eax
sub edx, ebp
mov eax, dword [esp + 0x194]
cmp edx, 0
je 0x4a1beb
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.004a1800
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 0x4a1dba
mov dword [esp], 0x5d7b80
call fcn.0040da40
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 [0x6cfdf8], 0
jne 0x4a1da2
mov dword [eax], ebp
mov ebp, dword [esp + 0x124]
mov dword [eax + 0xc], ebp
mov ebp, dword [esp + 0x120]
cmp byte [0x6cfdf8], 0
jne 0x4a1d87
mov dword [eax + 8], ebp
mov ebp, dword [esp + 0xe4]
mov dword [eax + 0x14], ebp
mov ebp, dword [esp + 0xe0]
cmp byte [0x6cfdf8], 0
jne 0x4a1d6c
mov dword [eax + 0x10], ebp
mov ebp, dword [esp + 0x1a0]
mov dword [eax + 0x1c], ebp
mov ebp, dword [esp + 0x19c]
cmp byte [0x6cfdf8], 0
jne 0x4a1d54
mov dword [eax + 0x18], ebp
xor ebp, ebp
mov dword [eax + 0x20], ebp
mov dword [eax + 0x24], ebp
mov ebx, dword [0x612440]
mov dword [esp + 0x1ac], ebx
mov ebx, dword [0x612444]
mov dword [esp + 0x1b0], ebx
mov ebx, dword [0x612448]
mov dword [esp + 0x1b4], ebx
mov ebx, dword [0x61244c]
mov dword [esp + 0x1b8], ebx
mov dword [esp + 0x1c0], eax
mov dword [esp + 0x1bc], 0x6a6d90
add esp, 0x190
ret
lea esi, [eax + 0x18]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040e410
mov eax, dword [esp + 0x8c]
jmp 0x4a1cff
lea esi, [eax + 0x10]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040e410
mov eax, dword [esp + 0x8c]
jmp 0x4a1ce2
lea esi, [eax + 8]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040e410
mov eax, dword [esp + 0x8c]
jmp 0x4a1cc1
mov dword [esp], eax
mov dword [esp + 4], ebp
call fcn.0040e410
mov eax, dword [esp + 0x8c]
jmp 0x4a1ca0
cmp edi, 0
jne 0x4a2b9f
cmp ecx, 0
je 0x4a1f68
mov dword [esp], 0x5d7b80
call fcn.0040da40
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 [0x6cfdf8], 0
jne 0x4a1f50
mov dword [eax], ebp
mov ebp, dword [esp + 0x124]
mov dword [eax + 0xc], ebp
mov ebp, dword [esp + 0x120]
cmp byte [0x6cfdf8], 0
jne 0x4a1f35
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 [0x6cfdf8], 0
jne 0x4a1f21
mov dword [eax + 0x18], ebp
mov dword [esp], 0
mov ebx, 0x5f08ad
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.0043ef50
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x8c]
cmp ebx, 0
je 0x4a1f1a
mov dword [esp + 0x14c], eax
mov dword [ebx + 0x24], eax
mov dword [esp + 0x148], ecx
cmp byte [0x6cfdf8], 0
jne 0x4a1f09
mov dword [ebx + 0x20], ecx
mov eax, dword [esp + 0x8c]
mov ebx, dword [0x612450]
mov dword [esp + 0x1ac], ebx
mov ebx, dword [0x612454]
mov dword [esp + 0x1b0], ebx
mov ebx, dword [0x612458]
mov dword [esp + 0x1b4], ebx
mov ebx, dword [0x61245c]
mov dword [esp + 0x1b8], ebx
mov dword [esp + 0x1c0], eax
mov dword [esp + 0x1bc], 0x6a6d90
add esp, 0x190
ret
lea esi, [ebx + 0x20]
mov dword [esp], esi
mov dword [esp + 4], ecx
call fcn.0040e410
jmp 0x4a1eb5
mov dword [ebx], eax
jmp 0x4a1e98
lea esi, [eax + 0x18]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040e410
jmp 0x4a1e4d
lea esi, [eax + 8]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040e410
mov eax, dword [esp + 0x8c]
jmp 0x4a1e24
mov dword [esp], eax
mov dword [esp + 4], ebp
call fcn.0040e410
mov eax, dword [esp + 0x8c]
jmp 0x4a1e03
cmp byte [esp + 0x32], 0
je 0x4a2b7a
mov ebx, dword [esp + 0x74]
cmp ebx, 0xc
jge 0x4a2b7a
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 0x4a2b30
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 0x4a2017
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 0x4a2b70
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 0x4a2b70
xor eax, eax
cmp al, 0
je 0x4a2b30
mov eax, 0x1d
mov ebx, dword [esp + 0x78]
cmp eax, ebx
jge 0x4a2157
mov dword [esp], 0x5d7b80
call fcn.0040da40
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 [0x6cfdf8], 0
jne 0x4a213f
mov dword [eax], ebp
mov ebp, dword [esp + 0x124]
mov dword [eax + 0xc], ebp
mov ebp, dword [esp + 0x120]
cmp byte [0x6cfdf8], 0
jne 0x4a2124
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 [0x6cfdf8], 0
jne 0x4a210c
mov dword [eax + 0x18], ebp
mov ebp, 0x5f1b7e
mov dword [eax + 0x20], ebp
mov dword [eax + 0x24], 0x12
mov ebx, dword [0x612410]
mov dword [esp + 0x1ac], ebx
mov ebx, dword [0x612414]
mov dword [esp + 0x1b0], ebx
mov ebx, dword [0x612418]
mov dword [esp + 0x1b4], ebx
mov ebx, dword [0x61241c]
mov dword [esp + 0x1b8], ebx
mov dword [esp + 0x1c0], eax
mov dword [esp + 0x1bc], 0x6a6d90
add esp, 0x190
ret
lea esi, [eax + 0x18]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040e410
mov eax, dword [esp + 0x8c]
jmp 0x4a20b0
lea esi, [eax + 8]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040e410
mov eax, dword [esp + 0x8c]
jmp 0x4a208b
mov dword [esp], eax
mov dword [esp + 4], ebp
call fcn.0040e410
mov eax, dword [esp + 0x8c]
jmp 0x4a206a
mov ebx, dword [esp + 0x80]
xor ebp, ebp
cmp ebx, ebp
je 0x4a21f2
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.004a6cf0
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 0x4a2602
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 [0x6ba834]
mov dword [esp + 0x1c], ebx
call fcn.004a6cf0
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.004a76c0
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 0x4a2354
cmp esi, 0
je 0x4a2305
cmp ecx, esi
jne 0x4a2354
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.00451bb0
mov esi, dword [esp + 0x9c]
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x4a2354
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], 0x5da240
call fcn.0040da40
mov ecx, dword [esp + 4]
mov edi, ecx
cmp ecx, 0
je 0x4a25fb
xor eax, eax
call fcn.00451f73
mov dword [esp + 0x90], ecx
mov ebp, dword [esp + 0x104]
mov dword [ecx + 4], ebp
mov ebp, dword [esp + 0x100]
cmp byte [0x6cfdf8], 0
jne 0x4a25ea
mov dword [ecx], ebp
mov dword [esp], 0x5b6300
call fcn.0040da40
mov eax, dword [esp + 4]
mov ebp, dword [0x612420]
mov dword [eax], ebp
mov ebp, dword [0x612424]
mov dword [eax + 4], ebp
mov ebp, dword [0x612428]
mov dword [eax + 8], ebp
movzx ebp, byte [0x61242c]
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 [0x6cfdf8], 0
jne 0x4a25d2
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 0x4a25cb
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 [0x6cfdf8], 0
jne 0x4a25b7
mov dword [ebx + 8], eax
mov dword [esp], 0x5b6340
call fcn.0040da40
mov ecx, dword [esp + 0x90]
mov eax, dword [esp + 4]
mov ebp, dword [0x612188]
mov dword [eax], ebp
mov ebp, dword [0x61218c]
mov dword [eax + 4], ebp
movzx ebp, byte [0x612190]
xchg ebp, ebx
mov byte [eax + 8], bl
xchg ebp, ebx
movzx ebp, byte [0x612191]
xchg ebp, ebx
mov byte [eax + 9], bl
xchg ebp, ebx
movzx ebp, byte [0x612192]
xchg ebp, ebx
mov byte [eax + 0xa], bl
xchg ebp, ebx
mov esi, 1
mov edx, 1
cmp ecx, 0
je 0x4a25b0
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 [0x6cfdf8], 0
jne 0x4a2595
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 0x4a258e
mov ebp, dword [ecx + 8]
mov dword [esp + 0x84], ecx
cmp byte [0x6cfdf8], 0
jne 0x4a2576
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.0040e410
mov ecx, dword [esp + 0x84]
jmp 0x4a252e
call fcn.004278c0
ud2
lea esi, [ecx + 0x14]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0040e410
mov ecx, dword [esp + 0x90]
jmp 0x4a24f5
mov dword [ecx], eax
jmp 0x4a24ca
lea esi, [ebx + 8]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0040e410
jmp 0x4a2465
mov dword [ebx], eax
jmp 0x4a243a
mov dword [esp], eax
mov dword [esp + 4], ebp
call fcn.0040e410
mov eax, dword [esp + 0x94]
jmp 0x4a2419
mov dword [esp], ecx
mov dword [esp + 4], ebp
call fcn.0040e410
jmp 0x4a23ba
mov dword [ecx], eax
jmp 0x4a238c
mov ebx, dword [esp + 0x9c]
cmp ebx, 0
je 0x4a2aa6
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 [0x6ba834]
mov dword [esp + 0x1c], ebx
call fcn.004a6cf0
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.004a7bc0
mov ebp, dword [esp + 0x9c]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x4c], ecx
movzx ebx, byte [esp + 0x19]
cmp bl, 0
je 0x4a2734
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 0x4a2a9a
cmp ebp, 3
jb 0x4a2a9f
mov esi, dword [esp + 0x98]
mov eax, 3
cmp eax, 3
jne 0x4a2a9a
mov dword [esp + 0x128], esi
mov dword [esp], esi
mov dword [esp + 0x12c], eax
mov dword [esp + 4], eax
mov ebp, 0x5ee3b5
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 3
call fcn.00451bb0
mov ebp, dword [esp + 0x9c]
mov ecx, dword [esp + 0x4c]
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x4a2a9a
cmp ebp, 3
jb 0x4a2a93
mov ecx, ebp
sub ecx, 3
mov eax, dword [esp + 0x98]
cmp ecx, 0
je 0x4a27bc
add eax, 3
mov dword [esp + 0x140], eax
mov dword [esp], eax
mov dword [esp + 0x144], ecx
mov dword [esp + 4], ecx
call fcn.0049eee0
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], 0x5da240
call fcn.0040da40
mov ecx, dword [esp + 4]
mov edi, ecx
cmp ecx, 0
je 0x4a2a8c
xor eax, eax
call fcn.00451f73
mov dword [esp + 0x90], ecx
mov ebp, dword [esp + 0xfc]
mov dword [ecx + 4], ebp
mov ebp, dword [esp + 0xf8]
cmp byte [0x6cfdf8], 0
jne 0x4a2a7b
mov dword [ecx], ebp
mov dword [esp], 0x5b6300
call fcn.0040da40
mov eax, dword [esp + 4]
mov ebp, dword [0x612430]
mov dword [eax], ebp
mov ebp, dword [0x612434]
mov dword [eax + 4], ebp
mov ebp, dword [0x612438]
mov dword [eax + 8], ebp
movzx ebp, byte [0x61243c]
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 [0x6cfdf8], 0
jne 0x4a2a63
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 0x4a2a5c
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 [0x6cfdf8], 0
jne 0x4a2a48
mov dword [ebx + 8], eax
mov dword [esp], 0x5b6340
call fcn.0040da40
mov ecx, dword [esp + 0x90]
mov eax, dword [esp + 4]
mov ebp, dword [0x612198]
mov dword [eax], ebp
mov ebp, dword [0x61219c]
mov dword [eax + 4], ebp
movzx ebp, byte [0x6121a0]
xchg ebp, ebx
mov byte [eax + 8], bl
xchg ebp, ebx
movzx ebp, byte [0x6121a1]
xchg ebp, ebx
mov byte [eax + 9], bl
xchg ebp, ebx
movzx ebp, byte [0x6121a2]
xchg ebp, ebx
mov byte [eax + 0xa], bl
xchg ebp, ebx
mov esi, 1
mov edx, 1
cmp ecx, 0
je 0x4a2a41
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 [0x6cfdf8], 0
jne 0x4a2a26
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 0x4a2a1f
mov ebp, dword [ecx + 8]
mov dword [esp + 0x88], ecx
cmp byte [0x6cfdf8], 0
jne 0x4a2a07
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.0040e410
mov eax, dword [esp + 0x88]
jmp 0x4a29bf
call fcn.004278c0
ud2
lea esi, [ecx + 0x14]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0040e410
mov ecx, dword [esp + 0x90]
jmp 0x4a2984
mov dword [ecx], eax
jmp 0x4a2959
lea esi, [ebx + 8]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0040e410
jmp 0x4a28f4
mov dword [ebx], eax
jmp 0x4a28c9
mov dword [esp], eax
mov dword [esp + 4], ebp
call fcn.0040e410
mov eax, dword [esp + 0x94]
jmp 0x4a28a8
mov dword [esp], ecx
mov dword [esp + 4], ebp
call fcn.0040e410
jmp 0x4a2849
mov dword [ecx], eax
jmp 0x4a281b
call fcn.00427930
ud2
jmp 0x4a27e7
call fcn.00427930
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.004a6cf0
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, 0x6a9a40
cmp edi, 0xd
jae 0x4a2b69
shl ebx, 2
add ebp, ebx
mov ecx, dword [ebp]
mov ebx, edi
dec ebx
mov ebp, 0x6a9a40
cmp ebx, 0xd
jae 0x4a2b62
shl ebx, 2
add ebp, ebx
mov ebx, dword [ebp]
mov eax, ecx
sub eax, ebx
jmp 0x4a2027
call fcn.004278c0
ud2
call fcn.004278c0
ud2
mov eax, 1
jmp 0x4a2019
cmp byte [esp + 0x33], 0
je 0x4a1f8b
mov ebx, dword [esp + 0x74]
cmp ebx, 0xc
jne 0x4a1f8b
mov dword [esp + 0x74], 0
jmp 0x4a1f8b
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 0x4a3cd8
cmp eax, 0x1c
jg 0x4a3939
cmp eax, 0x18
jg 0x4a3906
cmp eax, 0x16
jg 0x4a38ef
cmp eax, 0x15
jne 0x4a309b
cmp ecx, 3
jl 0x4a2ff2
cmp ecx, 3
jb 0x4a3094
mov eax, 3
cmp eax, 3
jne 0x4a2ff2
mov dword [esp + 0x128], esi
mov dword [esp], esi
mov dword [esp + 0x12c], eax
mov dword [esp + 4], eax
mov ebp, 0x5ee45a
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 3
call fcn.00451bb0
mov esi, dword [esp + 0x19c]
mov ecx, dword [esp + 0x1a0]
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x4a2ff2
mov ebx, dword [0x6ba834]
mov dword [esp + 0x80], ebx
cmp ecx, 3
jb 0x4a2feb
sub ecx, 3
mov eax, esi
cmp ecx, 0
je 0x4a2c8b
add eax, 3
mov dword [esp + 0x1a0], ecx
mov dword [esp + 0x19c], eax
mov ebx, dword [esp + 0xdc]
cmp ebx, 0
je 0x4a2e8a
mov dword [esp], 0x5d7b80
call fcn.0040da40
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 [0x6cfdf8], 0
jne 0x4a2e72
mov dword [eax], ebp
mov ebp, dword [esp + 0x124]
mov dword [eax + 0xc], ebp
mov ebp, dword [esp + 0x120]
cmp byte [0x6cfdf8], 0
jne 0x4a2e57
mov dword [eax + 8], ebp
mov ebp, dword [esp + 0xac]
mov dword [eax + 0x14], ebp
mov ebp, dword [esp + 0xa8]
cmp byte [0x6cfdf8], 0
jne 0x4a2e3c
mov dword [eax + 0x10], ebp
mov ebp, dword [esp + 0x1a0]
mov dword [eax + 0x1c], ebp
mov ebp, dword [esp + 0x19c]
cmp byte [0x6cfdf8], 0
jne 0x4a2e28
mov dword [eax + 0x18], ebp
mov dword [esp], 0
mov ebx, 0x5ee25a
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, 0x5f0461
mov dword [esp + 0x14], ebx
mov dword [esp + 0x18], 0xd
call fcn.0043efd0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x8c]
cmp ebx, 0
je 0x4a2e21
mov dword [esp + 0x144], ecx
mov dword [ebx + 0x24], ecx
mov dword [esp + 0x140], eax
cmp byte [0x6cfdf8], 0
jne 0x4a2e10
mov dword [ebx + 0x20], eax
mov eax, dword [esp + 0x8c]
mov ebx, dword [0x6123f0]
mov dword [esp + 0x1ac], ebx
mov ebx, dword [0x6123f4]
mov dword [esp + 0x1b0], ebx
mov ebx, dword [0x6123f8]
mov dword [esp + 0x1b4], ebx
mov ebx, dword [0x6123fc]
mov dword [esp + 0x1b8], ebx
mov dword [esp + 0x1c0], eax
mov dword [esp + 0x1bc], 0x6a6d90
add esp, 0x190
ret
lea esi, [ebx + 0x20]
mov dword [esp], esi
mov dword [esp + 4], eax
call fcn.0040e410
jmp 0x4a2dbc
mov dword [ebx], eax
jmp 0x4a2d9f
lea esi, [eax + 0x18]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040e410
jmp 0x4a2d43
lea esi, [eax + 0x10]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040e410
mov eax, dword [esp + 0x8c]
jmp 0x4a2d22
lea esi, [eax + 8]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040e410
mov eax, dword [esp + 0x8c]
jmp 0x4a2d01
mov dword [esp], eax
mov dword [esp + 4], ebp
call fcn.0040e410
mov eax, dword [esp + 0x8c]
jmp 0x4a2ce0
mov ebx, dword [esp + 0x118]
cmp ebx, 0
je 0x4a1b6e
mov dword [esp], 0x5d7b80
call fcn.0040da40
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 [0x6cfdf8], 0
jne 0x4a2fd3
mov dword [eax], ebp
mov ebp, dword [esp + 0x124]
mov dword [eax + 0xc], ebp
mov ebp, dword [esp + 0x120]
cmp byte [0x6cfdf8], 0
jne 0x4a2fb8
mov dword [eax + 8], ebp
mov ebp, dword [esp + 0xac]
mov dword [eax + 0x14], ebp
mov ebp, dword [esp + 0xa8]
cmp byte [0x6cfdf8], 0
jne 0x4a2f9d
mov dword [eax + 0x10], ebp
mov ebp, dword [esp + 0x1a0]
mov dword [eax + 0x1c], ebp
mov ebp, dword [esp + 0x19c]
cmp byte [0x6cfdf8], 0
jne 0x4a2f85
mov dword [eax + 0x18], ebp
xor ebp, ebp
mov dword [eax + 0x20], ebp
mov dword [eax + 0x24], ebp
mov ebx, dword [0x612400]
mov dword [esp + 0x1ac], ebx
mov ebx, dword [0x612404]
mov dword [esp + 0x1b0], ebx
mov ebx, dword [0x612408]
mov dword [esp + 0x1b4], ebx
mov ebx, dword [0x61240c]
mov dword [esp + 0x1b8], ebx
mov dword [esp + 0x1c0], eax
mov dword [esp + 0x1bc], 0x6a6d90
add esp, 0x190
ret
lea esi, [eax + 0x18]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040e410
mov eax, dword [esp + 0x8c]
jmp 0x4a2f30
lea esi, [eax + 0x10]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040e410
mov eax, dword [esp + 0x8c]
jmp 0x4a2f13
lea esi, [eax + 8]
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.0040e410
mov eax, dword [esp + 0x8c]
jmp 0x4a2ef2
mov dword [esp], eax
mov dword [esp + 4], ebp
call fcn.0040e410
mov eax, dword [esp + 0x8c]
jmp 0x4a2ed1
call fcn.00427930
ud2
mov dword [esp], esi
mov dword [esp + 4], ecx
call fcn.004a4720
mov edi, dword [esp + 0x1a0]
mov eax, dword [esp + 8]
movzx ebx, byte [esp + 0xc]
cmp bl, 0
jne 0x4a3032
mov ebx, dword [0x6be780]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6be784]
mov dword [esp + 0x11c], ebx
jmp 0x4a2c99
cmp eax, edi
ja 0x4a308d
mov ebp, dword [esp + 0x19c]
mov esi, eax
mov ecx, eax
cmp eax, edi
ja 0x4a3086
mov edx, edi
sub edx, eax
mov eax, dword [esp + 0x19c]
cmp edx, 0
je 0x4a3057
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 0x4a2c99
call fcn.00427930
ud2
call fcn.00427930
ud2
call fcn.00427930
ud2
cmp eax, 0x16
jne 0x4a2c99
cmp edi, 0x16
je 0x4a3897
cmp edi, 0x18
je 0x4a3897
cmp edi, 0x19
je 0x4a3897
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 0x4a3748
cmp edi, 0x1e
je 0x4a3748
cmp edi, 0x1d
je 0x4a3661
cmp edi, 0x18
je 0x4a3661
cmp edi, 0x1a
je 0x4a34b9
cmp edi, 0x1f
je 0x4a34b9
cmp edi, 0x17
je 0x4a3389
cmp edi, 0x1c
je 0x4a3389
cmp ecx, 5
jge 0x4a316b
mov ebx, dword [0x6be780]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6be784]
mov dword [esp + 0x11c], ebx
jmp 0x4a2c99
cmp ecx, 1
jb 0x4a3382
mov dword [esp + 0x14c], 1
mov dword [esp + 0x148], esi
cmp ecx, 3
jb 0x4a337b
mov ebx, esi
inc ebx
mov dword [esp + 0x144], 2
mov dword [esp + 0x140], ebx
cmp ecx, 5
jb 0x4a3374
mov edx, esi
add edx, 3
mov ebp, 2
cmp ecx, 5
jb 0x4a336d
sub ecx, 5
mov eax, esi
cmp ecx, 0
je 0x4a31cd
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, 0x5ee24e
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.0049eee0
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 0x4a32ba
mov ebx, dword [esp + 0x108]
mov dword [esp], ebx
mov ebx, dword [esp + 0x10c]
mov dword [esp + 4], ebx
call fcn.0049eee0
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 0x4a32fe
mov ebx, dword [esp + 0xb8]
mov dword [esp], ebx
mov ebx, dword [esp + 0xbc]
mov dword [esp + 4], ebx
call fcn.0049eee0
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 0x4a3366
mov ebx, dword [esp + 0xb0]
movzx ebp, byte [ebx]
xchg ebp, eax
cmp al, 0x2b
xchg ebp, eax
je 0x4a2c99
xchg ebp, eax
cmp al, 0x2d
xchg ebp, eax
jne 0x4a3347
mov ebx, ecx
neg ebx
mov dword [esp + 0x34], ebx
jmp 0x4a2c99
mov ebx, dword [0x6be780]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6be784]
mov dword [esp + 0x11c], ebx
jmp 0x4a2c99
call fcn.004278c0
ud2
call fcn.00427930
ud2
call fcn.00427930
ud2
call fcn.00427930
ud2
call fcn.00427930
ud2
cmp ecx, 7
jge 0x4a33ad
mov ebx, dword [0x6be780]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6be784]
mov dword [esp + 0x11c], ebx
jmp 0x4a2c99
cmp ecx, 1
jb 0x4a34b2
mov dword [esp + 0x134], 1
mov edi, esi
cmp ecx, 3
jb 0x4a34ab
mov ebx, esi
inc ebx
mov dword [esp + 0x14c], 2
mov dword [esp + 0x148], ebx
cmp ecx, 5
jb 0x4a34a4
mov ebx, esi
add ebx, 3
mov dword [esp + 0x144], 2
mov dword [esp + 0x140], ebx
cmp ecx, 7
jb 0x4a349d
mov edx, esi
add edx, 5
mov ebp, 2
cmp ecx, 7
jb 0x4a3496
sub ecx, 7
mov eax, esi
cmp ecx, 0
je 0x4a3426
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 0x4a322e
call fcn.00427930
ud2
call fcn.00427930
ud2
call fcn.00427930
ud2
call fcn.00427930
ud2
call fcn.00427930
ud2
cmp ecx, 9
jge 0x4a34dd
mov ebx, dword [0x6be780]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6be784]
mov dword [esp + 0x11c], ebx
jmp 0x4a2c99
cmp ecx, 3
jbe 0x4a365a
mov ebx, esi
add ebx, 3
movzx ebp, byte [ebx]
xchg ebp, eax
cmp al, 0x3a
xchg ebp, eax
jne 0x4a3634
cmp ecx, 6
jbe 0x4a3653
mov ebx, esi
add ebx, 6
movzx ebp, byte [ebx]
xchg ebp, eax
cmp al, 0x3a
xchg ebp, eax
jne 0x4a3634
cmp ecx, 1
jb 0x4a362d
mov dword [esp + 0x13c], 1
mov dword [esp + 0x138], esi
cmp ecx, 3
jb 0x4a3626
mov edi, esi
inc edi
mov dword [esp + 0x134], 2
cmp ecx, 6
jb 0x4a361f
mov ebx, esi
add ebx, 4
mov dword [esp + 0x14c], 2
mov dword [esp + 0x148], ebx
cmp ecx, 9
jb 0x4a3618
mov ebx, esi
add ebx, 7
mov dword [esp + 0x144], 2
mov dword [esp + 0x140], ebx
cmp ecx, 9
jb 0x4a3611
sub ecx, 9
mov eax, esi
cmp ecx, 0
je 0x4a359d
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 0x4a322e
call fcn.00427930
ud2
call fcn.00427930
ud2
call fcn.00427930
ud2
call fcn.00427930
ud2
call fcn.00427930
ud2
mov ebx, dword [0x6be780]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6be784]
mov dword [esp + 0x11c], ebx
jmp 0x4a2c99
call fcn.004278c0
ud2
call fcn.004278c0
ud2
cmp ecx, 3
jge 0x4a3685
mov ebx, dword [0x6be780]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6be784]
mov dword [esp + 0x11c], ebx
jmp 0x4a2c99
cmp ecx, 1
jb 0x4a3741
mov dword [esp + 0x14c], 1
mov dword [esp + 0x148], esi
cmp ecx, 3
jb 0x4a373a
mov edi, esi
inc edi
mov dword [esp + 0x13c], 2
cmp ecx, 3
jb 0x4a3733
sub ecx, 3
mov eax, esi
cmp ecx, 0
je 0x4a36c9
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, 0x5ee24e
mov dword [esp + 0x108], ebx
mov dword [esp + 0x10c], 2
mov ebx, 0x5ee24e
mov dword [esp + 0xb8], ebx
mov dword [esp + 0xbc], 2
mov dword [esp + 0x19c], edx
mov dword [esp + 0x1a0], ebp
jmp 0x4a322e
call fcn.00427930
ud2
call fcn.00427930
ud2
call fcn.00427930
ud2
cmp ecx, 6
jge 0x4a376c
mov ebx, dword [0x6be780]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6be784]
mov dword [esp + 0x11c], ebx
jmp 0x4a2c99
cmp ecx, 3
jbe 0x4a3890
mov ebx, esi
add ebx, 3
movzx ebp, byte [ebx]
xchg ebp, eax
cmp al, 0x3a
xchg ebp, eax
je 0x4a37a3
mov ebx, dword [0x6be780]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6be784]
mov dword [esp + 0x11c], ebx
jmp 0x4a2c99
cmp ecx, 1
jb 0x4a3889
mov dword [esp + 0x144], 1
mov dword [esp + 0x140], esi
cmp ecx, 3
jb 0x4a3882
mov ebx, esi
inc ebx
mov dword [esp + 0x14c], 2
mov dword [esp + 0x148], ebx
cmp ecx, 6
jb 0x4a387b
mov edi, esi
add edi, 4
mov dword [esp + 0x13c], 2
cmp ecx, 6
jb 0x4a3874
sub ecx, 6
mov eax, esi
cmp ecx, 0
je 0x4a3807
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, 0x5ee24e
mov dword [esp + 0xb8], ebx
mov dword [esp + 0xbc], 2
mov dword [esp + 0x19c], edx
mov dword [esp + 0x1a0], ebp
jmp 0x4a322e
call fcn.00427930
ud2
call fcn.00427930
ud2
call fcn.00427930
ud2
call fcn.00427930
ud2
call fcn.004278c0
ud2
cmp ecx, 1
jl 0x4a30bf
cmp ecx, 0
jbe 0x4a38e8
movzx ebp, byte [esi]
xchg ebp, eax
cmp al, 0x5a
xchg ebp, eax
jne 0x4a30bf
cmp ecx, 1
jb 0x4a38e1
dec ecx
mov eax, esi
cmp ecx, 0
je 0x4a38c1
inc eax
mov dword [esp + 0x1a0], ecx
mov dword [esp + 0x19c], eax
mov ebx, dword [0x6ba834]
mov dword [esp + 0x80], ebx
jmp 0x4a2c99
call fcn.00427930
ud2
call fcn.004278c0
ud2
cmp eax, 0x17
je 0x4a30a4
cmp eax, 0x18
je 0x4a30a4
jmp 0x4a2c99
cmp eax, 0x1a
jg 0x4a3922
cmp eax, 0x19
je 0x4a30a4
cmp eax, 0x1a
je 0x4a30a4
jmp 0x4a2c99
cmp eax, 0x1b
je 0x4a30a4
cmp eax, 0x1c
je 0x4a30a4
jmp 0x4a2c99
cmp eax, 0x20
jg 0x4a3a1c
cmp eax, 0x1e
jg 0x4a395e
cmp eax, 0x1d
je 0x4a30a4
cmp eax, 0x1e
je 0x4a30a4
jmp 0x4a2c99
cmp eax, 0x1f
je 0x4a30a4
cmp eax, 0x20
jne 0x4a2c99
mov eax, edi
sar eax, 0x10
inc eax
cmp ecx, eax
jge 0x4a3999
mov ebx, dword [0x6be780]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6be784]
mov dword [esp + 0x11c], ebx
jmp 0x4a2c99
mov dword [esp], esi
mov dword [esp + 4], ecx
mov dword [esp + 0x58], eax
mov dword [esp + 8], eax
call fcn.004a4ad0
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 0x4a3a15
mov edx, eax
sub edx, ecx
mov eax, dword [esp + 0x19c]
cmp edx, 0
je 0x4a3a02
add eax, ecx
mov dword [esp + 0x1a0], edx
mov dword [esp + 0x19c], eax
jmp 0x4a2c99
call fcn.00427930
ud2
cmp eax, 0x101
jg 0x4a3be5
cmp eax, 0x21
jne 0x4a3b77
cmp ecx, 2
jl 0x4a3b5d
cmp ecx, 0
jbe 0x4a3b70
movzx ebp, byte [esi]
xchg ebp, eax
cmp al, 0x2e
xchg ebp, eax
jne 0x4a3b5d
cmp ecx, 1
jbe 0x4a3b69
mov ebx, esi
inc ebx
movzx ebp, byte [ebx]
xchg ebp, eax
cmp al, 0x30
xchg ebp, eax
jb 0x4a3b5d
cmp ecx, 1
jbe 0x4a3b62
mov ebx, esi
inc ebx
movzx ebp, byte [ebx]
xchg ebp, eax
cmp al, 0x39
xchg ebp, eax
ja 0x4a3b5d
xor eax, eax
cmp eax, 9
jge 0x4a3ac8
mov ebp, eax
inc ebp
cmp ebp, ecx
jge 0x4a3ac8
mov ebx, eax
inc ebx
cmp ebx, ecx
jae 0x4a3b56
mov ebp, esi
add ebp, ebx
movzx ebx, byte [ebp]
cmp bl, 0x30
jb 0x4a3ac8
mov ebx, eax
inc ebx
cmp ebx, ecx
jae 0x4a3b4f
mov ebp, esi
add ebp, ebx
movzx ebx, byte [ebp]
cmp bl, 0x39
ja 0x4a3ac8
inc eax
cmp eax, 9
jl 0x4a3a8b
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.004a4ad0
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 0x4a3b48
mov edx, eax
sub edx, ecx
mov eax, dword [esp + 0x19c]
cmp edx, 0
je 0x4a3b35
add eax, ecx
mov dword [esp + 0x1a0], edx
mov dword [esp + 0x19c], eax
jmp 0x4a2c99
call fcn.00427930
ud2
call fcn.004278c0
ud2
call fcn.004278c0
ud2
jmp 0x4a2c99
call fcn.004278c0
ud2
call fcn.004278c0
ud2
call fcn.004278c0
ud2
cmp eax, 0x101
jne 0x4a2c99
mov ebx, dword [0x6baf00]
mov dword [esp], ebx
mov ebx, dword [0x6baf04]
mov dword [esp + 4], ebx
mov ebx, dword [0x6baf08]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ecx
call fcn.0049eac0
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 0x4a2c99
cmp eax, 0x102
jne 0x4a3c4f
mov ebx, dword [0x6baf20]
mov dword [esp], ebx
mov ebx, dword [0x6baf24]
mov dword [esp + 4], ebx
mov ebx, dword [0x6baf28]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ecx
call fcn.0049eac0
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 0x4a2c99
cmp eax, 0x103
jne 0x4a2c99
mov dword [esp], esi
mov dword [esp + 4], ecx
cmp edi, 0x104
je 0x4a3cd1
mov byte [esp + 8], 0
call fcn.004a15d0
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 0x4a3cb5
cmp eax, 0xc
jle 0x4a2c99
mov ebx, 0x5ee9b3
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], 5
jmp 0x4a2c99
mov byte [esp + 8], 1
jmp 0x4a3c6e
cmp eax, 0x112
jg 0x4a40a1
cmp eax, 0x107
jg 0x4a3e9c
cmp eax, 0x105
jg 0x4a3d66
cmp eax, 0x104
je 0x4a3c5a
cmp eax, 0x105
jne 0x4a2c99
mov ebx, dword [0x6baef0]
mov dword [esp], ebx
mov ebx, dword [0x6baef4]
mov dword [esp + 4], ebx
mov ebx, dword [0x6baef8]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ecx
call fcn.0049eac0
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 0x4a2c99
cmp eax, 0x106
jne 0x4a3dc8
mov ebx, dword [0x6baf10]
mov dword [esp], ebx
mov ebx, dword [0x6baf14]
mov dword [esp + 4], ebx
mov ebx, dword [0x6baf18]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ecx
call fcn.0049eac0
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 0x4a2c99
cmp eax, 0x107
jne 0x4a2c99
cmp edi, 0x108
jne 0x4a3e07
cmp ecx, 0
jle 0x4a3e07
cmp ecx, 0
jbe 0x4a3e95
movzx ebp, byte [esi]
xchg ebp, eax
cmp al, 0x20
xchg ebp, eax
jne 0x4a3e07
cmp ecx, 1
jb 0x4a3e8e
dec ecx
mov eax, esi
cmp ecx, 0
je 0x4a3e05
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 0x4a3e87
mov byte [esp + 8], 0
call fcn.004a15d0
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 0x4a2c99
mov ebx, 0x5ee493
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], 3
jmp 0x4a2c99
mov byte [esp + 8], 1
jmp 0x4a3e29
call fcn.00427930
ud2
call fcn.004278c0
ud2
cmp eax, 0x109
jg 0x4a3ebe
cmp eax, 0x108
je 0x4a3dd3
cmp eax, 0x109
je 0x4a3dd3
jmp 0x4a2c99
cmp eax, 0x111
jne 0x4a3fc7
cmp ecx, 4
jl 0x4a3f7a
mov dword [esp + 0xc8], esi
xor eax, eax
mov dword [esp + 0xcc], ecx
cmp ecx, eax
jg 0x4a3f99
xor eax, eax
cmp al, 0
je 0x4a3f7a
cmp ecx, 4
jb 0x4a3f73
mov edx, 4
mov ebp, esi
cmp ecx, 4
jb 0x4a3f6c
sub ecx, 4
mov eax, esi
cmp ecx, 0
je 0x4a3f13
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.0049eee0
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 0x4a2c99
call fcn.00427930
ud2
call fcn.00427930
ud2
mov ebx, dword [0x6be780]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6be784]
mov dword [esp + 0x11c], ebx
jmp 0x4a2c99
cmp eax, ecx
jae 0x4a3fc0
mov ebp, esi
add ebp, eax
movzx ebx, byte [ebp]
cmp bl, 0x30
jb 0x4a3fb9
cmp bl, 0x39
ja 0x4a3fb9
mov eax, 1
jmp 0x4a3eec
xor eax, eax
jmp 0x4a3eec
call fcn.004278c0
ud2
cmp eax, 0x112
jne 0x4a2c99
cmp ecx, 2
jge 0x4a3ff6
mov ebx, dword [0x6be780]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6be784]
mov dword [esp + 0x11c], ebx
jmp 0x4a2c99
cmp ecx, 2
jb 0x4a409a
mov edx, 2
mov ebp, esi
cmp ecx, 2
jb 0x4a4093
sub ecx, 2
mov eax, esi
cmp ecx, 0
je 0x4a401c
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.0049eee0
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 0x4a4082
mov ebx, eax
add ebx, 0x76c
mov dword [esp + 0x38], ebx
jmp 0x4a2c99
mov ebx, eax
add ebx, 0x7d0
mov dword [esp + 0x38], ebx
jmp 0x4a2c99
call fcn.00427930
ud2
call fcn.00427930
ud2
cmp eax, 0x20d
jg 0x4a424a
cmp eax, 0x20b
jg 0x4a41b6
cmp eax, 0x20a
jne 0x4a412d
mov dword [esp], esi
mov dword [esp + 4], ecx
mov byte [esp + 8], 0
call fcn.004a15d0
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 0x4a4111
cmp eax, 0x18
jl 0x4a2c99
mov ebx, 0x5ee734
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], 4
jmp 0x4a2c99
cmp eax, 0x20b
jne 0x4a2c99
mov dword [esp], esi
mov dword [esp + 4], ecx
cmp edi, 0x20c
je 0x4a41af
mov byte [esp + 8], 0
call fcn.004a15d0
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 0x4a4193
cmp eax, 0xc
jle 0x4a2c99
mov ebx, 0x5ee734
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], 4
jmp 0x4a2c99
mov byte [esp + 8], 1
jmp 0x4a414c
cmp eax, 0x20c
je 0x4a4138
cmp eax, 0x20d
jne 0x4a2c99
mov dword [esp], esi
mov dword [esp + 4], ecx
cmp edi, 0x20e
je 0x4a4243
mov byte [esp + 8], 0
call fcn.004a15d0
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 0x4a4227
cmp eax, 0x3c
jl 0x4a2c99
mov ebx, 0x5eec1c
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], 6
jmp 0x4a2c99
mov byte [esp + 8], 1
jmp 0x4a41e0
cmp eax, 0x20f
jg 0x4a449c
cmp eax, 0x20e
je 0x4a41cc
cmp eax, 0x20f
jne 0x4a2c99
mov dword [esp], esi
mov dword [esp + 4], ecx
cmp edi, 0x210
je 0x4a4492
mov byte [esp + 8], 0
call fcn.004a15d0
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 0x4a4476
cmp ecx, 0x3c
jge 0x4a4476
mov dword [esp + 0x1a0], eax
cmp eax, 2
jl 0x4a443c
cmp eax, 0
jbe 0x4a446f
movzx ebp, byte [edx]
xchg ebp, eax
cmp al, 0x2e
xchg ebp, eax
jne 0x4a443c
mov dword [esp + 0xd0], edx
mov ecx, eax
mov eax, 1
mov dword [esp + 0xd4], ecx
cmp ecx, eax
jg 0x4a4441
xor eax, eax
cmp al, 0
je 0x4a443c
mov ebx, dword [esp + 0x194]
mov dword [esp], ebx
mov ebx, dword [esp + 0x198]
mov dword [esp + 4], ebx
call fcn.0049d2f0
mov esi, dword [esp + 0x1a0]
mov eax, dword [esp + 0x10]
and eax, 0xffff
cmp eax, 0x20
je 0x4a2c99
cmp eax, 0x21
je 0x4a2c99
mov eax, 2
cmp eax, esi
jge 0x4a4384
mov edi, dword [esp + 0x19c]
mov dword [esp + 0xc0], edi
mov dword [esp + 0xc4], esi
cmp esi, eax
jg 0x4a440e
xor ecx, ecx
cmp cl, 0
je 0x4a4384
inc eax
cmp eax, esi
jl 0x4a435b
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.004a4ad0
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 0x4a4407
mov edx, eax
sub edx, ecx
mov eax, dword [esp + 0x19c]
cmp edx, 0
je 0x4a43f4
add eax, ecx
mov dword [esp + 0x1a0], edx
mov dword [esp + 0x19c], eax
jmp 0x4a2c99
call fcn.00427930
ud2
cmp eax, esi
jae 0x4a4435
mov ebp, edi
add ebp, eax
movzx ebx, byte [ebp]
cmp bl, 0x30
jb 0x4a442e
cmp bl, 0x39
ja 0x4a442e
mov ecx, 1
jmp 0x4a437a
xor ecx, ecx
jmp 0x4a437a
call fcn.004278c0
ud2
jmp 0x4a2c99
cmp eax, ecx
jae 0x4a4468
mov ebp, edx
add ebp, eax
movzx ebx, byte [ebp]
cmp bl, 0x30
jb 0x4a4461
cmp bl, 0x39
ja 0x4a4461
mov eax, 1
jmp 0x4a430d
xor eax, eax
jmp 0x4a430d
call fcn.004278c0
ud2
call fcn.004278c0
ud2
mov ebx, 0x5eec2e
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], 6
jmp 0x4a42c7
mov byte [esp + 8], 1
jmp 0x4a4283
cmp eax, 0x210
je 0x4a426b
cmp eax, 0x213
jne 0x4a45d8
cmp ecx, 2
jge 0x4a44d6
mov ebx, dword [0x6be780]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6be784]
mov dword [esp + 0x11c], ebx
jmp 0x4a2c99
cmp ecx, 2
jb 0x4a45d1
mov edx, 2
mov ebp, esi
cmp ecx, 2
jb 0x4a45ca
sub ecx, 2
mov eax, esi
cmp ecx, 0
je 0x4a44fc
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 0x4a456e
mov dword [esp], esi
mov dword [esp + 0x14c], eax
mov dword [esp + 4], eax
mov ebp, 0x5ee264
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 2
call fcn.00451bb0
mov esi, dword [esp + 0x148]
mov eax, dword [esp + 0x14c]
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x4a456e
mov byte [esp + 0x33], 1
jmp 0x4a2c99
mov dword [esp + 0x14c], eax
cmp eax, 2
jne 0x4a45ab
mov dword [esp], esi
mov dword [esp + 4], eax
mov ebp, 0x5ee28e
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 2
call fcn.00451bb0
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x4a45ab
mov byte [esp + 0x32], 1
jmp 0x4a2c99
mov ebx, dword [0x6be780]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6be784]
mov dword [esp + 0x11c], ebx
jmp 0x4a2c99
call fcn.00427930
ud2
call fcn.00427930
ud2
cmp eax, 0x214
jne 0x4a2c99
cmp ecx, 2
jge 0x4a4607
mov ebx, dword [0x6be780]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6be784]
mov dword [esp + 0x11c], ebx
jmp 0x4a2c99
cmp ecx, 2
jb 0x4a4702
mov edx, 2
mov ebp, esi
cmp ecx, 2
jb 0x4a46fb
sub ecx, 2
mov eax, esi
cmp ecx, 0
je 0x4a462d
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 0x4a469f
mov dword [esp], esi
mov dword [esp + 0x14c], eax
mov dword [esp + 4], eax
mov ebp, 0x5ee2d2
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 2
call fcn.00451bb0
mov esi, dword [esp + 0x148]
mov eax, dword [esp + 0x14c]
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x4a469f
mov byte [esp + 0x33], 1
jmp 0x4a2c99
mov dword [esp + 0x14c], eax
cmp eax, 2
jne 0x4a46dc
mov dword [esp], esi
mov dword [esp + 4], eax
mov ebp, 0x5ee2e0
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 2
call fcn.00451bb0
movzx ebx, byte [esp + 0x10]
cmp bl, 0
je 0x4a46dc
mov byte [esp + 0x32], 1
jmp 0x4a2c99
mov ebx, dword [0x6be780]
mov dword [esp + 0x118], ebx
mov ebx, dword [0x6be784]
mov dword [esp + 0x11c], ebx
jmp 0x4a2c99
call fcn.00427930
ud2
call fcn.00427930
ud2
call fcn.00427930
ud2
call fcn.0044fe90
jmp fcn.004a1a70