Function at 0x498060
Capabilities:
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov ecx, dword [0x8cbf38]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x420]
cmp eax, dword [ecx + 8]
jbe 0x49ab99
sub esp, 0x4a0
mov eax, 0
mov dword [esp + 0x49c], eax
mov byte [esp + 0x4f], 0
mov dword [esp + 0x4b0], 0
mov dword [esp + 0x4b4], 0
mov dword [esp + 0x128], 0x75727473
mov dword [esp + 0x12c], 0x7b207463
xor eax, eax
xor ecx, ecx
jmp 0x4980d5
movzx edx, byte [esp + eax + 0x128]
imul ecx, ecx, 0x1000193
inc eax
xor ecx, edx
cmp eax, 8
jl 0x4980c4
mov dword [esp + 0x64], ecx
lea eax, [0x64a4c0]
mov dword [esp], eax
mov eax, dword [esp + 0x4a8]
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call fcn.004519e0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x2d4], eax
lea edi, [esp + 0x230]
xor eax, eax
call fcn.0046c0b0
lea edi, [esp + 0x334]
call fcn.0046c0b9
lea edi, [esp + 0x3b4]
call fcn.0046c0ad
lea ecx, [esp + 0x3b4]
mov dword [esp + 0x340], ecx
call fcn.00456760
mov eax, dword [esp]
mov dword [esp + 0x33c], eax
mov dword [esp + 0x230], 0x75727473
mov dword [esp + 0x234], 0x7b207463
mov eax, dword [esp + 0x4a4]
mov ecx, dword [esp + 0x4a8]
mov edx, dword [esp + 0x64]
xor ebx, ebx
xor ebp, ebp
xor esi, esi
xor edi, edi
xor ebx, ebx
mov dword [esp + 0x98], ebx
mov ebx, 0x40
mov dword [esp + 0x7c], ebx
lea ebx, [esp + 0x230]
mov dword [esp + 0x290], ebx
mov ebx, 8
mov dword [esp + 0x78], ebx
mov ebx, 1
mov byte [esp + 0x4d], bl
xor ebx, ebx
mov dword [esp + 0x70], ebx
xor ebx, ebx
mov byte [esp + 0x4b], bl
xor ebx, ebx
mov dword [esp + 0x9c], ebx
xor ebx, ebx
mov dword [esp + 0x84], ebx
xor ebx, ebx
mov dword [esp + 0x298], ebx
xor ebx, ebx
jmp 0x498254
mov dword [edx + ebx*4], eax
mov dword [edx + ebx*4 + 4], ecx
mov eax, dword [esp + 0x2d0]
add eax, 0x34
lea ebx, [ebp + 1]
mov ecx, dword [esp + 0x4a8]
mov ebp, dword [esp + 0x298]
mov esi, dword [esp + 0x84]
movzx ebp, byte [esp + 0x4c]
mov esi, dword [esp + 0x94]
mov edx, dword [esp + 0xb0]
mov dword [esp + 0x118], eax
mov eax, dword [esp + 0x2ac]
mov dword [esp + 0x290], eax
xchg edi, eax
mov byte [esp + 0x4d], al
xchg edi, eax
mov dword [esp + 0x110], ecx
mov ecx, dword [esp + 0xf4]
mov dword [esp + 0x70], ecx
mov edi, dword [esp + 0x2a0]
mov eax, dword [esp + 0x118]
mov ecx, dword [esp + 0x110]
mov dword [esp + 0x2a0], edi
mov dword [esp + 0x94], esi
mov dword [esp + 0xb0], edx
xchg ebp, eax
mov byte [esp + 0x4c], al
xchg ebp, eax
cmp ecx, ebx
jle 0x498c72
lea edi, [esp + 0x380]
mov esi, eax
call fcn.0046c54e
mov ecx, dword [esp + 0x384]
test ecx, ecx
je 0x49ab19
mov dword [esp + 0x2d0], eax
mov dword [esp + 0xac], ebx
mov eax, dword [esp + 0x380]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.00497f60
movzx eax, byte [esp + 8]
test al, al
je 0x49aa9f
mov eax, dword [esp + 0x390]
test eax, eax
je 0x49aa25
lea edi, [esp]
lea esi, [esp + 0x380]
call fcn.0046c54e
call fcn.0049b240
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x2cc], ecx
mov edx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x44]
mov ebp, dword [esp + 0x40]
mov dword [esp + 0x318], eax
mov dword [esp + 0x31c], ecx
mov dword [esp + 0x320], edx
movzx eax, byte [ecx + 0xf]
test al, 0x40
setne al
movzx edx, byte [esp + 0x4c]
or eax, edx
mov byte [esp + 0x4c], al
test ebx, ebx
je 0x49838f
mov edx, dword [esp + 0x84]
test edx, edx
je 0x49839d
mov dword [esp + 0x100], ebx
mov dword [esp + 0x2c8], ebp
cmp edx, ebx
jne 0x49a99f
mov eax, dword [esp + 0x298]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
call fcn.00406eb0
movzx eax, byte [esp + 0xc]
test al, al
je 0x49a99f
movzx eax, byte [esp + 0x4c]
mov ecx, dword [esp + 0x2cc]
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x298]
jmp 0x49839d
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x298]
mov dword [esp + 0x84], ebx
mov dword [esp + 0x298], ebp
mov eax, dword [esp + 0x318]
mov dword [esp], eax
call fcn.00402070
mov eax, dword [esp + 4]
mov dword [esp + 0x29c], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x8c], ecx
lea edx, [esp + 0x210]
mov dword [esp], edx
call fcn.004558c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xb0]
xor ebx, ebx
jmp 0x499cf4
mov dword [esp + 0xb0], edx
lea eax, [esp + 0x1f0]
mov dword [esp], eax
lea eax, [0x700c18]
mov dword [esp + 4], eax
mov dword [esp + 8], 1
mov ecx, dword [esp + 0x29c]
mov dword [esp + 0xc], ecx
mov edx, dword [esp + 0x8c]
mov dword [esp + 0x10], edx
call fcn.00455480
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x78]
lea edx, [eax + ecx]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x7c]
cmp ebp, edx
jb 0x498453
mov esi, dword [esp + 0x290]
jmp 0x4984a8
mov dword [esp + 0xf8], eax
mov dword [esp + 0x2b4], ebx
mov ecx, dword [esp + 0x290]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], eax
lea ecx, [0x62f320]
mov dword [esp + 0x10], ecx
call fcn.00451aa0
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x2b4]
mov esi, eax
mov ebp, ecx
mov eax, dword [esp + 0xf8]
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x78], edx
mov dword [esp + 0x290], esi
add ecx, esi
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
call fcn.0046c7b0
mov eax, dword [esp + 0x318]
movzx eax, byte [eax]
test al, 8
je 0x49876e
mov eax, dword [esp + 0x31c]
movzx eax, byte [eax + 0xf]
and eax, 0x1f
cmp eax, 0x16
jne 0x498550
mov ecx, dword [esp + 0x2cc]
movzx ebp, byte [ecx + 0xf]
and ebp, 0x1f
cmp ebp, 0x12
ja 0x498516
cmp ebp, 0x11
jne 0x49850c
mov ebp, dword [ecx + 0x20]
jmp 0x498536
cmp ebp, 0x12
jne 0x498534
mov ebp, dword [ecx + 0x20]
jmp 0x498536
cmp ebp, 0x15
jne 0x498520
mov ebp, dword [ecx + 0x24]
jmp 0x498536
cmp ebp, 0x16
jne 0x49852a
mov ebp, dword [ecx + 0x20]
jmp 0x498536
cmp ebp, 0x17
jne 0x498534
mov ebp, dword [ecx + 0x20]
jmp 0x498536
xor ebp, ebp
movzx ebp, byte [ebp + 0xf]
and ebp, 0x1f
cmp ebp, 0x16
je 0x49a93f
cmp ebp, 0x14
jne 0x498557
jmp 0x49a93f
mov ecx, dword [esp + 0x2cc]
cmp eax, 0x14
jne 0x49858c
mov eax, dword [ecx + 0x24]
mov dword [esp + 0x2b0], eax
mov edx, dword [ecx + 0x28]
mov dword [esp + 0xf8], edx
xor ebx, ebx
mov ebp, dword [esp + 0x98]
mov esi, dword [esp + 0x2a0]
mov edi, dword [esp + 0x94]
jmp 0x49a594
cmp eax, 0x16
jne 0x49867c
movzx eax, byte [ecx + 0xc]
test al, 1
jne 0x4985a2
xor eax, eax
jmp 0x498601
movzx eax, byte [ecx + 0xf]
and eax, 0x1f
cmp eax, 0x14
ja 0x4985d6
cmp eax, 0x12
ja 0x4985c7
cmp eax, 0x11
jne 0x4985bd
lea eax, [ecx + 0x2c]
jmp 0x498601
cmp eax, 0x12
jne 0x4985fe
lea eax, [ecx + 0x28]
jmp 0x498601
cmp eax, 0x13
jne 0x4985d1
lea eax, [ecx + 0x24]
jmp 0x498601
lea eax, [ecx + 0x30]
jmp 0x498601
cmp eax, 0x16
ja 0x4985ea
cmp eax, 0x15
jne 0x4985e5
lea eax, [ecx + 0x38]
jmp 0x498601
lea eax, [ecx + 0x24]
jmp 0x498601
cmp eax, 0x17
jne 0x4985f4
lea eax, [ecx + 0x24]
jmp 0x498601
cmp eax, 0x19
jne 0x4985fe
lea eax, [ecx + 0x30]
jmp 0x498601
lea eax, [ecx + 0x20]
test eax, eax
je 0x498662
mov ebp, dword [esp + 0xac]
test ebp, ebp
jle 0x49861d
movzx esi, word [eax + 4]
test si, si
ja 0x49a52f
mov esi, dword [esp + 0x4a8]
cmp esi, 1
jg 0x49a517
movzx edi, word [eax + 4]
test di, di
jne 0x49863c
xor eax, eax
xor edi, edi
jmp 0x498650
mov edx, dword [eax + 8]
movzx edi, di
add eax, edx
cmp edi, 0x10000
ja 0x49a50b
mov dword [esp + 0x58], edi
xor edx, edx
mov ebx, dword [esp + 0x98]
jmp 0x49a349
mov eax, dword [esp + 0x94]
mov edx, dword [esp + 0x98]
mov ebx, dword [esp + 0x2a0]
jmp 0x49a025
movzx eax, byte [ecx + 0xc]
test al, 1
jne 0x498689
xor eax, eax
jmp 0x4986e8
movzx eax, byte [ecx + 0xf]
and eax, 0x1f
cmp eax, 0x14
ja 0x4986bd
cmp eax, 0x12
ja 0x4986ae
cmp eax, 0x11
jne 0x4986a4
lea eax, [ecx + 0x2c]
jmp 0x4986e8
cmp eax, 0x12
jne 0x4986e5
lea eax, [ecx + 0x28]
jmp 0x4986e8
cmp eax, 0x13
jne 0x4986b8
lea eax, [ecx + 0x24]
jmp 0x4986e8
lea eax, [ecx + 0x30]
jmp 0x4986e8
cmp eax, 0x16
ja 0x4986d1
cmp eax, 0x15
jne 0x4986cc
lea eax, [ecx + 0x38]
jmp 0x4986e8
lea eax, [ecx + 0x24]
jmp 0x4986e8
cmp eax, 0x17
jne 0x4986db
lea eax, [ecx + 0x24]
jmp 0x4986e8
cmp eax, 0x19
jne 0x4986e5
lea eax, [ecx + 0x30]
jmp 0x4986e8
lea eax, [ecx + 0x20]
test eax, eax
je 0x498754
mov ebp, dword [esp + 0xac]
test ebp, ebp
jle 0x498704
movzx esi, word [eax + 4]
test si, si
ja 0x49a00d
mov esi, dword [esp + 0x4a8]
cmp esi, 1
jle 0x49871f
movzx edi, byte [ecx + 0xf]
xchg edi, eax
test al, 0x20
xchg edi, eax
jne 0x499ff5
movzx edi, word [eax + 4]
test di, di
jne 0x49872e
xor eax, eax
xor edi, edi
jmp 0x498742
mov edx, dword [eax + 8]
movzx edi, di
add eax, edx
cmp edi, 0x10000
ja 0x499fe9
mov dword [esp + 0x50], edi
xor edx, edx
mov ebx, dword [esp + 0x98]
jmp 0x499e27
mov eax, dword [esp + 0x98]
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x2a0]
jmp 0x499db7
mov eax, dword [esp + 0x98]
mov ecx, dword [esp + 0x94]
mov edx, dword [esp + 0x2a0]
mov dword [esp + 0x98], eax
mov dword [esp + 0x94], ecx
mov dword [esp + 0x2a0], edx
lea ebx, [0x634360]
mov dword [esp], ebx
lea ebp, [esp + 0x334]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x29c]
mov dword [esp + 8], esi
mov edi, dword [esp + 0x8c]
mov dword [esp + 0xc], edi
call fcn.00414480
movzx eax, byte [esp + 0x14]
test al, al
je 0x4987f1
mov eax, dword [esp + 0x8c]
cmp eax, 1
jne 0x499dae
mov ecx, dword [esp + 0x29c]
cmp byte [ecx], 0x5f
je 0x4987ff
jmp 0x499d5e
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x29c]
lea edx, [0x634360]
mov dword [esp], edx
lea ebx, [esp + 0x334]
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call fcn.004147e0
mov eax, dword [esp + 0x10]
test byte [eax], al
mov dword [esp + 0x10c], 0
mov eax, dword [esp + 0x2cc]
mov ecx, dword [eax + 8]
shr ecx, 0x18
mov byte [esp + 0x10c], cl
mov ecx, dword [eax + 8]
shr ecx, 0x10
mov byte [esp + 0x10d], cl
mov ecx, dword [eax + 8]
shr ecx, 8
mov byte [esp + 0x10e], cl
mov ecx, dword [eax + 8]
mov byte [esp + 0x10f], cl
mov ecx, dword [esp + 0xb0]
xor edx, edx
jmp 0x499d0e
mov dword [esp + 0xb0], ecx
mov dword [esp], eax
call fcn.00491f70
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
lea edx, [esp + 0x1d0]
mov dword [esp], edx
lea edx, [0x700c18]
mov dword [esp + 4], edx
mov dword [esp + 8], 1
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
call fcn.00455480
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x78]
lea edx, [eax + ecx]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x7c]
cmp ebp, edx
jb 0x4988d7
mov esi, dword [esp + 0x290]
jmp 0x498928
mov dword [esp + 0x2b4], ebx
mov dword [esp + 0xf8], eax
mov ecx, dword [esp + 0x290]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], eax
lea ecx, [0x62f320]
mov dword [esp + 0x10], ecx
call fcn.00451aa0
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0xf8]
mov ecx, dword [esp + 0x78]
mov ebx, dword [esp + 0x2b4]
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x78], edx
mov dword [esp + 0x290], esi
add ecx, esi
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
call fcn.0046c7b0
mov eax, dword [esp + 0x318]
movzx ecx, byte [eax]
test cl, 2
jne 0x498973
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x290]
mov edx, dword [esp + 0x78]
mov ebx, dword [esp + 0xb0]
jmp 0x498b1f
mov dword [esp], eax
call fcn.00402130
lea eax, [esp + 0x1b0]
mov dword [esp], eax
call fcn.004558c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xb0]
xor ebx, ebx
jmp 0x499d25
mov dword [esp + 0xb0], edx
mov eax, dword [esp + 0x318]
mov dword [esp], eax
call fcn.00402130
mov eax, dword [esp + 4]
mov dword [esp + 0x28c], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x74], ecx
lea edx, [ecx + ecx*2]
mov ebx, edx
shr edx, 0x1f
add edx, ebx
sar edx, 1
mov dword [esp + 0xf8], edx
lea ebx, [0x62f320]
mov dword [esp], ebx
mov dword [esp + 4], 0
mov dword [esp + 8], edx
call fcn.004519e0
mov eax, dword [esp + 0xc]
mov dword [esp], eax
mov dword [esp + 4], 0
mov eax, dword [esp + 0xf8]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x28c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x10], eax
mov byte [esp + 0x14], 0x22
mov byte [esp + 0x15], 0
mov byte [esp + 0x16], 0
call fcn.0048c9e0
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
lea edx, [esp + 0x190]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00455720
lea eax, [esp + 0x170]
mov dword [esp], eax
lea eax, [0x700c18]
mov dword [esp + 4], eax
mov dword [esp + 8], 1
call fcn.00455480
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x78]
lea edx, [eax + ecx]
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x7c]
cmp ebp, edx
jb 0x498a97
mov esi, dword [esp + 0x290]
jmp 0x498ae8
mov dword [esp + 0x2b4], ebx
mov dword [esp + 0xf8], eax
mov ecx, dword [esp + 0x290]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], eax
lea ecx, [0x62f320]
mov dword [esp + 0x10], ecx
call fcn.00451aa0
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
mov eax, dword [esp + 0xf8]
mov ecx, dword [esp + 0x78]
mov ebx, dword [esp + 0x2b4]
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x78], edx
mov dword [esp + 0x290], esi
add ecx, esi
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
call fcn.0046c7b0
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x290]
mov edx, dword [esp + 0x78]
mov ebx, dword [esp + 0xb0]
mov dword [esp + 0xb0], ebx
mov ebp, dword [esp + 0x4a8]
lea esi, [ebp - 1]
mov edi, ebp
mov ebp, dword [esp + 0xac]
cmp ebp, esi
jge 0x498b8a
inc edx
cmp eax, edx
jae 0x498b85
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
lea eax, [0x62f320]
mov dword [esp + 0x10], eax
call fcn.00451aa0
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0xb0]
mov ebp, dword [esp + 0xac]
mov edi, dword [esp + 0x4a8]
mov byte [edx + ecx - 1], 0x3b
mov dword [esp + 0x7c], eax
mov esi, ecx
movzx ecx, byte [esp + 0x4d]
test cl, cl
je 0x498bae
mov ecx, dword [esp + 0x2cc]
mov edi, dword [ecx + 0x10]
test edi, edi
xchg edi, ebx
setne bl
xchg edi, ebx
jmp 0x498bb7
mov ecx, dword [esp + 0x2cc]
xor edi, edi
mov dword [esp + 0x78], edx
mov dword [esp + 0x2ac], esi
movzx eax, byte [ecx + 0xd]
movzx edx, al
mov ebx, dword [esp + 0x70]
lea esi, [ebx + edx - 1]
neg edx
and esi, edx
cmp ebx, esi
ja 0x499d46
movzx edx, byte [esp + 0x4b]
cmp dl, al
jb 0x498be8
mov eax, edx
mov edx, dword [ecx]
add edx, esi
cmp esi, edx
ja 0x499d2e
mov byte [esp + 0x4b], al
mov dword [esp + 0x320], esi
mov ecx, dword [ecx]
test ecx, ecx
jne 0x498c09
mov ecx, edx
jmp 0x498c12
mov ecx, edx
mov edx, dword [esp + 0x9c]
mov dword [esp + 0xf4], ecx
mov dword [esp + 0x9c], edx
lea ebx, [ebp + ebp*2]
mov eax, dword [esp + 0x318]
mov ecx, dword [esp + 0x31c]
mov edx, dword [esp + 0x2d4]
mov dword [edx + ebx*4 + 8], esi
mov esi, dword [0x8cc0e0]
test esi, esi
je 0x4981d6
xchg edi, eax
mov byte [esp + 0x4e], al
xchg edi, eax
call fcn.0046bee0
mov dword [edi], eax
mov esi, dword [edx + ebx*4]
mov dword [edi + 4], esi
mov dword [edi + 8], ecx
mov esi, dword [edx + ebx*4 + 4]
mov dword [edi + 0xc], esi
movzx edi, byte [esp + 0x4e]
jmp 0x4981d6
mov ebx, dword [esp + 0x70]
test ebx, ebx
jbe 0x498c93
mov eax, ebp
mov ebp, dword [esp + 0x9c]
cmp ebp, ebx
jne 0x498c95
cmp ebx, 0xffffffff
je 0x499ccf
inc ebx
jmp 0x498c95
mov eax, ebp
mov dword [esp + 0x70], ebx
test esi, esi
je 0x4990cd
mov ebp, edi
lea edi, [esp + 0x350]
xor eax, eax
call fcn.0046c0b4
lea ecx, [0x63d000]
mov dword [esp + 0x2f0], ecx
lea ecx, [esp + 0x350]
mov dword [esp + 0x2f4], ecx
mov ecx, dword [esp + 0x2f0]
test ecx, ecx
je 0x498cdf
lea edi, [0x702820]
jmp 0x498ce3
xor edi, edi
xor ecx, ecx
mov dword [esp + 0x140], 0
mov dword [esp + 0x144], 0
mov dword [esp + 0x148], 0
mov dword [esp + 0x14c], 0
lea ebx, [0x64fb80]
mov dword [esp + 0x2e8], ebx
lea ebx, [esp + 0x140]
mov dword [esp + 0x2ec], ebx
mov ebx, dword [esp + 0x2e8]
test ebx, ebx
je 0x498d43
lea eax, [0x702820]
mov dword [esp + 0x5c], eax
xor eax, eax
jmp 0x498d4b
xor ebx, ebx
mov dword [esp + 0x5c], ebx
xor ebx, ebx
mov dword [esp + 0x270], ebx
mov dword [esp + 0x274], ecx
mov dword [esp + 0x60], edi
mov edx, dword [ebp + 4]
mov ebx, dword [ebp + 8]
mov ecx, dword [ebp + 0xc]
mov ebp, dword [ebp]
mov dword [esp + 0x130], ebp
mov dword [esp + 0x134], edx
mov dword [esp + 0x138], ebx
mov dword [esp + 0x13c], ecx
lea ecx, [0x64cdc0]
mov dword [esp + 0x2e0], ecx
lea ecx, [esp + 0x130]
mov dword [esp + 0x2e4], ecx
mov ecx, dword [esp + 0x2e0]
test ecx, ecx
je 0x498db3
lea edx, [0x702820]
jmp 0x498db7
xor edx, edx
xor ecx, ecx
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.0049b590
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x2c8], ecx
lea edi, [esp + 0x400]
mov edx, eax
xor eax, eax
call fcn.0046c099
lea eax, [0x67cdd8]
mov dword [esp + 0x400], eax
mov dword [esp + 0x404], 1
mov eax, dword [esp + 0x60]
mov dword [esp + 0x410], eax
mov eax, dword [esp + 0x274]
mov dword [esp + 0x414], eax
lea eax, [0x6ffbb0]
mov dword [esp + 0x434], eax
mov dword [esp + 0x438], 1
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x444], eax
mov eax, dword [esp + 0x270]
mov dword [esp + 0x448], eax
lea eax, [0x67cdd5]
mov dword [esp + 0x468], eax
mov dword [esp + 0x46c], 1
mov dword [esp + 0x478], edx
mov eax, dword [esp + 0x2c8]
mov dword [esp + 0x47c], eax
lea eax, [esp + 0x400]
mov dword [esp], eax
mov dword [esp + 4], 3
mov dword [esp + 8], 3
call fcn.00498060
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004a6d10
mov eax, dword [esp + 8]
mov dword [esp + 0x2cc], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x2d0], ecx
mov edx, dword [esp + 0x10]
mov dword [esp + 0xfc], edx
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.004a11a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0
call fcn.004a1350
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.0049d3b0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.004a6600
mov eax, dword [esp + 0xc]
mov dword [esp + 0x2c4], eax
mov ecx, dword [esp + 0x2cc]
mov dword [esp], ecx
mov edx, dword [esp + 0x2d0]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0xfc]
mov dword [esp + 8], ebx
call fcn.004a11a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 1
call fcn.004a1350
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.0049d3b0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.004a6600
mov eax, dword [esp + 0xc]
mov dword [esp + 0x2c0], eax
mov ecx, dword [esp + 0x2cc]
mov dword [esp], ecx
mov ecx, dword [esp + 0x2d0]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0xfc]
mov dword [esp + 8], ecx
call fcn.004a11a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
call fcn.004a1350
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0
mov eax, dword [esp + 0x94]
mov dword [esp + 0x10], eax
call fcn.004a5ac0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov byte [esp + 0xc], 1
call fcn.004a2110
mov eax, dword [esp + 0x10]
lea ecx, [0x621c00]
cmp eax, ecx
jne 0x499cb9
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 4]
mov edx, dword [esp + 0x94]
cmp edx, ecx
jge 0x49908d
mov ecx, edx
jmp 0x499096
mov edx, ecx
mov ecx, dword [esp + 0x94]
mov eax, dword [eax]
mov ebx, dword [esp + 0x2a0]
cmp ebx, eax
je 0x4990bd
mov dword [esp], eax
mov dword [esp + 4], ebx
shl edx, 4
mov dword [esp + 8], edx
call fcn.0046c7b0
mov ecx, dword [esp + 0x94]
mov ecx, dword [esp + 0x2c0]
mov eax, dword [esp + 0x2c4]
jmp 0x4990e2
lea eax, [0x642940]
mov dword [esp], eax
call fcn.0040fcf0
mov eax, dword [esp + 4]
lea ecx, [eax + 0x30]
mov dword [esp + 0x278], eax
mov edx, dword [esp + 0x94]
mov word [ecx + 4], dx
mov word [ecx + 6], dx
mov dword [ecx + 8], 0x10
mov ecx, dword [esp + 0x4a8]
test ecx, ecx
je 0x499175
mov ebx, dword [esp + 0x78]
inc ebx
mov ebp, dword [esp + 0x7c]
cmp ebp, ebx
jb 0x499120
mov esi, dword [esp + 0x290]
jmp 0x49916e
mov eax, dword [esp + 0x290]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x62f320]
mov dword [esp + 0x10], eax
call fcn.00451aa0
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x94]
mov esi, eax
mov ebp, ecx
mov eax, dword [esp + 0x278]
mov ecx, dword [esp + 0x4a8]
mov byte [ebx + esi - 1], 0x20
jmp 0x499184
mov ebp, dword [esp + 0x7c]
mov ebx, dword [esp + 0x78]
mov esi, dword [esp + 0x290]
inc ebx
cmp ebp, ebx
jae 0x4991c8
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 1
lea eax, [0x62f320]
mov dword [esp + 0x10], eax
call fcn.00451aa0
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x278]
mov ecx, dword [esp + 0x4a8]
mov edx, dword [esp + 0x94]
mov byte [ebx + esi - 1], 0x7d
nop
mov ebp, dword [esp + 0xb0]
xor edi, edi
jmp 0x4991e7
imul ebp, ebp, 0x1000193
xor ebp, 0x7d
mov edi, 1
test edi, edi
jle 0x4991d9
mov dword [esp + 0xb0], ebp
lea eax, [esp + 0x150]
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
call fcn.00455720
movzx eax, byte [esp + 0x4b]
movzx ecx, al
mov edx, dword [esp + 0x70]
lea ebx, [edx + ecx - 1]
neg ecx
and ebx, ecx
mov ecx, dword [esp + 0xc]
mov ebp, dword [esp + 0x10]
cmp edx, ebx
ja 0x499ca1
mov dword [esp + 0x6c], ebp
mov dword [esp + 0x70], ebx
mov dword [esp + 0x288], ecx
lea edx, [0x62fd00]
mov dword [esp + 0x2d8], edx
lea edx, [0x8cbda0]
mov dword [esp + 0x2dc], edx
mov edi, dword [esp + 0x278]
test byte [edi], al
mov esi, dword [esp + 0x2d8]
test byte [esi], al
mov edx, dword [0x8cc0e0]
test edx, edx
je 0x4992b1
mov dword [esp + 0x294], esi
lea eax, [0x63d000]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], esi
call fcn.004152e0
movzx eax, byte [esp + 0x4b]
mov ecx, dword [esp + 0x288]
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x6c]
mov esi, dword [esp + 0x294]
mov edi, dword [esp + 0x278]
call fcn.0046c558
mov ecx, dword [esp + 0x4a8]
mov edx, dword [esp + 0x278]
mov dword [edx + 0x28], ecx
mov dword [edx + 0x2c], ecx
mov esi, dword [0x8cc0e0]
test esi, esi
je 0x4992ef
call fcn.0046bec0
mov esi, dword [esp + 0x2d4]
mov dword [edi], esi
mov ecx, dword [edx + 0x24]
mov dword [edi + 4], ecx
mov ecx, dword [esp + 0x4a8]
mov esi, dword [esp + 0x2d4]
mov dword [edx + 0x24], esi
mov edi, dword [esp + 0x84]
test edi, edi
je 0x49935f
mov eax, dword [esp + 0x298]
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov byte [esp + 0x10], 0
mov byte [esp + 0x11], 0
call fcn.00402250
mov eax, dword [0x8cc0e0]
mov ecx, dword [esp + 0x14]
test eax, eax
jne 0x499348
mov eax, dword [esp + 0x278]
jmp 0x49935c
call fcn.0046bec0
mov dword [edi], ecx
mov eax, dword [esp + 0x278]
mov edx, dword [eax + 0x20]
mov dword [edi + 4], edx
mov dword [eax + 0x20], ecx
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x108], eax
lea ecx, [0x8a6bc8]
mov dword [esp], ecx
lea edx, [0x62f2e0]
mov dword [esp + 4], edx
lea ebx, [esp + 0x108]
mov dword [esp + 8], ebx
call fcn.00474b20
movzx eax, byte [esp + 0x14]
test al, al
je 0x4993c9
mov eax, dword [esp + 0xc]
lea ecx, [0x621c80]
cmp eax, ecx
jne 0x499c8b
mov eax, dword [esp + 0x10]
mov edx, dword [eax]
mov dword [esp + 0x2bc], edx
mov eax, dword [eax + 4]
mov dword [esp + 0x100], eax
xor ebx, ebx
jmp 0x499c15
lea eax, [0x8a6bc0]
mov dword [esp], eax
call fcn.00475ad0
mov dword [esp + 0x2f8], 0
mov dword [esp + 0x2fc], 0
lea eax, [0x49add0]
mov dword [esp + 0x2f8], eax
lea eax, [0x8a6bc0]
mov dword [esp + 0x2fc], eax
lea eax, [esp + 0x2f8]
mov dword [esp + 0x49c], eax
mov byte [esp + 0x4f], 1
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x104], eax
lea ecx, [0x8a6bc8]
mov dword [esp], ecx
lea ecx, [0x62f2e0]
mov dword [esp + 4], ecx
lea ecx, [esp + 0x104]
mov dword [esp + 8], ecx
call fcn.00474b20
movzx eax, byte [esp + 0x14]
test al, al
je 0x499484
mov eax, dword [esp + 0xc]
lea ecx, [0x621c80]
cmp eax, ecx
jne 0x499be1
mov eax, dword [esp + 0x10]
mov ecx, dword [eax]
mov dword [esp + 0x2bc], ecx
mov eax, dword [eax + 4]
mov dword [esp + 0x100], eax
xor edx, edx
jmp 0x499b5b
mov dword [esp + 0x120], 0
mov dword [esp + 0x124], 0
lea eax, [0x49ac40]
mov dword [esp + 0x120], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x124], eax
mov ecx, dword [esp + 0x288]
mov dword [esp], ecx
mov edx, dword [esp + 0x6c]
mov dword [esp + 4], edx
call fcn.00495f10
mov eax, dword [esp + 8]
mov dword [esp + 0x2b8], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x100], ecx
xor edx, edx
jmp 0x4994fe
mov ebx, dword [esp + 0xf8]
lea edx, [ebx + 1]
mov eax, dword [esp + 0x2b8]
mov ecx, dword [esp + 0x100]
cmp edx, ecx
jge 0x499593
mov dword [esp + 0xf8], edx
mov ecx, dword [eax + edx*4]
mov dword [esp + 0x27c], ecx
mov ebx, dword [esp + 0x278]
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov byte [esp + 8], 1
call fcn.004957e0
movzx eax, byte [esp + 0xc]
test al, al
je 0x4994e6
mov eax, dword [esp + 0x27c]
test eax, eax
je 0x49954b
lea ecx, [0x702820]
jmp 0x49954f
xor ecx, ecx
xor eax, eax
mov ebx, dword [esp + 0x120]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea edx, [esp + 0x120]
call ebx
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x4b0], eax
mov dword [esp + 0x4b4], ecx
mov byte [esp + 0x4f], 0
mov edx, dword [esp + 0x49c]
mov eax, dword [edx]
call eax
add esp, 0x4a0
ret
mov eax, dword [esp + 0x288]
mov dword [esp], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 4], eax
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov byte [esp + 0x10], 0
mov byte [esp + 0x11], 0
call fcn.00402250
mov eax, dword [esp + 0x14]
mov dword [esp], eax
call fcn.00468ec0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x278]
mov dword [ecx + 0x18], eax
mov byte [ecx + 0xc], 0
mov eax, dword [esp + 0xb0]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x70]
mov dword [ecx], eax
mov dword [esp], ecx
call fcn.0049b490
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x278]
mov dword [ecx + 4], eax
movzx eax, byte [esp + 0x4b]
mov byte [ecx + 0xd], al
mov byte [ecx + 0xe], al
mov dword [ecx + 0x1c], 0
mov eax, dword [esp + 0x94]
test eax, eax
je 0x49962f
movzx eax, byte [ecx + 0xc]
or eax, 1
mov byte [ecx + 0xc], al
movzx eax, byte [esp + 0x4c]
test al, al
je 0x499651
mov eax, dword [esp + 0x2d4]
mov edx, eax
mov ebx, dword [esp + 0x4a8]
xor ebp, ebp
xor esi, esi
jmp 0x4997e0
movzx eax, byte [ecx + 0xf]
and eax, 0xffffffbf
mov byte [ecx + 0xf], al
mov dword [esp + 0x324], 0
mov dword [esp + 0x328], 0
mov dword [esp + 0x32c], 0
mov dword [esp + 0x330], 0
lea eax, [esp + 0x324]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], ecx
call fcn.0049c830
mov eax, dword [esp + 0x32c]
test eax, eax
je 0x4996e0
mov eax, dword [0x8cc0e0]
mov ecx, dword [esp + 0x328]
test eax, eax
jne 0x4996c7
mov eax, dword [esp + 0x278]
jmp 0x4996db
call fcn.0046bec0
mov dword [edi], ecx
mov eax, dword [esp + 0x278]
mov ebx, dword [eax + 0x14]
mov dword [edi + 4], ebx
mov dword [eax + 0x14], ecx
jmp 0x4996e7
mov eax, dword [esp + 0x278]
mov ecx, dword [0x8cc0e0]
test ecx, ecx
je 0x4996fb
mov ecx, dword [eax + 0x10]
call fcn.0046beb0
mov dword [edi], ecx
mov dword [eax + 0x10], 0
movzx ecx, byte [esp + 0x4d]
test cl, cl
je 0x499757
lea eax, [0x63b160]
mov dword [esp], eax
call fcn.0040fcf0
mov eax, dword [esp + 4]
lea ecx, [0x49abb0]
mov dword [eax], ecx
mov ecx, dword [0x8cc0e0]
test ecx, ecx
jne 0x499738
mov ecx, dword [esp + 0x278]
jmp 0x49974f
call fcn.0046bed0
mov ecx, dword [esp + 0x278]
mov dword [edi], ecx
mov dword [edi + 4], eax
mov ebx, dword [ecx + 0x10]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
mov dword [ecx + 0x10], eax
mov eax, ecx
mov ecx, dword [esp + 0x4a8]
cmp ecx, 1
jne 0x499782
mov ecx, dword [esp + 0x2d4]
mov ecx, dword [ecx + 4]
movzx ecx, byte [ecx + 0xf]
test cl, 0x20
je 0x499782
movzx ecx, byte [eax + 0xf]
or ecx, 0x20
mov byte [eax + 0xf], cl
jmp 0x49978c
movzx ecx, byte [eax + 0xf]
and ecx, 0xffffffdf
mov byte [eax + 0xf], cl
mov ecx, dword [esp + 0x120]
lea ebx, [0x702820]
mov dword [esp], ebx
mov dword [esp + 4], eax
lea edx, [esp + 0x120]
call ecx
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x4b0], eax
mov dword [esp + 0x4b4], ecx
mov byte [esp + 0x4f], 0
mov edx, dword [esp + 0x49c]
mov eax, dword [edx]
call eax
add esp, 0x4a0
ret
add edi, 0xc
inc eax
mov esi, ebp
mov ebp, eax
mov eax, edi
cmp ebx, ebp
jle 0x4997fa
mov edi, eax
mov eax, dword [eax + 4]
mov eax, dword [eax + 4]
test eax, eax
je 0x4997f4
mov eax, ebp
jmp 0x4997d6
mov eax, ebp
mov ebp, esi
jmp 0x4997d6
mov dword [esp + 0xa0], esi
lea eax, [0x6280a0]
mov dword [esp], eax
call fcn.0040fcf0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x2d4]
mov edx, ecx
mov ebx, dword [esp + 0x4a8]
mov ebp, dword [esp + 0xa0]
xor esi, esi
mov edi, 4
mov esi, 4
mov dword [esp + 0x80], esi
xor edi, edi
mov dword [esp + 0x88], edi
xor esi, esi
mov edi, 4
jmp 0x499861
add ecx, 0xc
inc esi
mov dword [esp + 0x80], edx
mov edx, dword [esp + 0x2d4]
cmp ebx, esi
jle 0x49998c
cmp esi, ebp
jg 0x49998c
mov edx, dword [ecx + 4]
mov dword [esp + 0x2cc], edx
mov edx, dword [edx + 4]
test edx, edx
je 0x499980
mov dword [esp + 0x2d0], ecx
mov dword [esp + 0xa8], esi
mov edx, dword [ecx + 8]
mov ebp, dword [esp + 0x88]
cmp ebp, edx
jae 0x499974
mov dword [esp + 0xf4], edx
mov ebx, dword [esp + 0x80]
add ebx, 2
sub edx, ebp
cmp edi, ebx
jae 0x499907
mov dword [esp + 0xf0], edx
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], edi
mov dword [esp + 0xc], 2
lea eax, [0x62f320]
mov dword [esp + 0x10], eax
call fcn.00451aa0
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x2d0]
mov edx, dword [esp + 0xf0]
mov esi, dword [esp + 0xa8]
mov word [ebx + eax - 2], 1
shr edx, 2
cmp edx, 1
jbe 0x499a84
inc ebx
cmp edi, ebx
jae 0x499969
mov dword [esp + 0x90], edx
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], edi
mov dword [esp + 0xc], 1
lea eax, [0x62f320]
mov dword [esp + 0x10], eax
call fcn.00451aa0
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x2d0]
mov edx, dword [esp + 0x90]
mov esi, dword [esp + 0xa8]
mov byte [ebx + eax - 1], 0x81
dec edx
jmp 0x499aa2
mov edx, dword [esp + 0x80]
jmp 0x499a1b
mov edx, dword [esp + 0x80]
jmp 0x49984f
mov ebp, dword [esp + 0x80]
inc ebp
cmp edi, ebp
jae 0x4999d0
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], edi
mov dword [esp + 0xc], 1
lea eax, [0x62f320]
mov dword [esp + 0x10], eax
call fcn.00451aa0
mov eax, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x2d4]
mov ebx, dword [esp + 0x4a8]
mov byte [ebp + eax - 1], 0
test ebp, ebp
jbe 0x499a12
lea ecx, [ebp - 4]
mov dword [eax], ecx
mov ecx, dword [esp + 0x278]
movzx ebp, byte [ecx + 0xf]
or ebp, 0x40
xchg ebp, eax
mov byte [ecx + 0xf], al
xchg ebp, eax
mov ebp, dword [0x8cc0e0]
test ebp, ebp
je 0x499a08
call fcn.0046bec0
mov dword [edi], eax
mov ebp, dword [ecx + 0x14]
mov dword [edi + 4], ebp
mov dword [ecx + 0x14], eax
mov eax, ecx
jmp 0x4996e7
xor eax, eax
mov ecx, eax
call fcn.0046bf30
mov dword [esp + 0x88], ebp
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], edi
mov eax, dword [esp + 0x2cc]
mov dword [esp + 0xc], eax
call fcn.004977e0
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x2cc]
add eax, dword [ecx + 4]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov edi, dword [esp + 0x18]
mov ebx, dword [esp + 0x4a8]
mov ebp, dword [esp + 0xa0]
mov esi, dword [esp + 0xa8]
mov dword [esp + 0x88], eax
mov eax, ecx
mov ecx, dword [esp + 0x2d0]
jmp 0x49984f
mov edx, ebx
mov ebp, dword [esp + 0xf4]
jmp 0x499a1b
mov ebp, edx
or ebp, 0x80
xchg ebp, ecx
mov byte [ebx + eax - 1], cl
xchg ebp, ecx
shr edx, 7
mov dword [esp + 0x68], edx
cmp edx, 0x80
jb 0x499af5
inc ebx
cmp edi, ebx
jae 0x499a8f
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], edi
mov dword [esp + 0xc], 1
lea eax, [0x62f320]
mov dword [esp + 0x10], eax
call fcn.00451aa0
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x2d0]
mov edx, dword [esp + 0x68]
mov esi, dword [esp + 0xa8]
jmp 0x499a8f
inc ebx
cmp edi, ebx
jae 0x499b3a
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], edi
mov dword [esp + 0xc], 1
lea eax, [0x62f320]
mov dword [esp + 0x10], eax
call fcn.00451aa0
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x2d0]
mov edx, dword [esp + 0x68]
mov esi, dword [esp + 0xa8]
mov byte [ebx + eax - 1], dl
jmp 0x499a84
mov ebx, dword [esp + 0xf8]
lea edx, [ebx + 1]
mov eax, dword [esp + 0x100]
mov ecx, dword [esp + 0x2bc]
cmp edx, eax
jge 0x499484
mov dword [esp + 0xf8], edx
lea eax, [ecx + edx*8]
mov ebx, dword [eax]
mov eax, dword [eax + 4]
mov ebx, dword [ebx + 0x84]
mov dword [esp], eax
call ebx
mov eax, dword [esp + 4]
mov dword [esp + 0x280], eax
mov ecx, dword [esp + 0x278]
mov dword [esp], ecx
mov byte [esp + 8], 1
call fcn.004957e0
movzx eax, byte [esp + 0xc]
test al, al
je 0x499b43
mov eax, dword [esp + 0x280]
test eax, eax
je 0x499bb8
lea ecx, [0x702820]
jmp 0x499bbc
xor ecx, ecx
xor eax, eax
mov dword [esp + 0x4b0], ecx
mov dword [esp + 0x4b4], eax
mov byte [esp + 0x4f], 0
mov edx, dword [esp + 0x49c]
mov eax, dword [edx]
call eax
add esp, 0x4a0
ret
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [0x630fc0]
mov dword [esp + 8], eax
call fcn.0040d1d0
mov ebp, dword [esp + 0xf8]
lea ebx, [ebp + 1]
mov eax, dword [esp + 0x100]
lea ecx, [0x621c80]
mov edx, dword [esp + 0x2bc]
cmp ebx, eax
jge 0x4993c9
mov dword [esp + 0xf8], ebx
lea eax, [edx + ebx*8]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov ecx, dword [ecx + 0x84]
mov dword [esp], eax
call ecx
mov eax, dword [esp + 4]
mov dword [esp + 0x284], eax
mov ecx, dword [esp + 0x278]
mov dword [esp], ecx
mov byte [esp + 8], 1
call fcn.004957e0
movzx eax, byte [esp + 0xc]
test al, al
je 0x499bf7
mov eax, dword [esp + 0x284]
test eax, eax
je 0x499c72
lea ecx, [0x702820]
jmp 0x499c76
xor ecx, ecx
xor eax, eax
mov dword [esp + 0x4b0], ecx
mov dword [esp + 0x4b4], eax
add esp, 0x4a0
ret
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [0x630fc0]
mov dword [esp + 8], eax
call fcn.0040d1d0
lea eax, [0x62efe0]
mov dword [esp], eax
lea eax, [0x701030]
mov dword [esp + 4], eax
call fcn.0043c340
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [0x630fc0]
mov dword [esp + 8], eax
call fcn.0040d1d0
lea eax, [0x62efe0]
mov dword [esp], eax
lea eax, [0x701030]
mov dword [esp + 4], eax
call fcn.0043c340
movzx ebp, byte [ebx + eax]
imul edx, edx, 0x1000193
inc ebx
xor edx, ebp
cmp ebx, ecx
jl 0x499ce7
jmp 0x4983f5
movzx ebx, byte [esp + edx + 0x10c]
imul ecx, ecx, 0x1000193
inc edx
xor ecx, ebx
cmp edx, 4
jl 0x499cfd
jmp 0x498877
movzx ebp, byte [ebx + eax]
imul edx, edx, 0x1000193
inc ebx
xor edx, ebp
cmp ebx, ecx
jl 0x499d18
jmp 0x4989a0
lea eax, [0x62efe0]
mov dword [esp], eax
lea eax, [0x701030]
mov dword [esp + 4], eax
call fcn.0043c340
lea eax, [0x62efe0]
mov dword [esp], eax
lea eax, [0x701030]
mov dword [esp + 4], eax
call fcn.0043c340
mov dword [esp], 0
lea edx, [0x6891d6]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x22
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
call fcn.00455480
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0040d540
mov eax, dword [esp + 8]
lea ecx, [0x62efe0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0043c340
mov ecx, dword [esp + 0x29c]
jmp 0x499d5e
mov ecx, edx
mov edx, ebx
jmp 0x498783
lea ebp, [edx - 1]
shl ebp, 4
mov esi, dword [esp + 0xd8]
mov dword [ebx + ebp], esi
mov esi, dword [esp + 0xd4]
mov dword [ebx + ebp + 4], esi
mov esi, dword [esp + 0xd0]
mov dword [ebx + ebp + 8], esi
mov dword [ebx + ebp + 0xc], eax
mov eax, dword [esp + 0x2c4]
add eax, 0x10
mov ebp, dword [esp + 0xf8]
inc ebp
mov esi, dword [esp + 0x4a8]
mov edi, dword [esp + 0x50]
mov dword [esp + 0x2a0], ebx
mov dword [esp + 0x94], edx
mov edx, ebp
mov ebx, ecx
mov ecx, dword [esp + 0x2cc]
mov ebp, dword [esp + 0xac]
cmp edx, edi
jge 0x499fbc
mov dword [esp + 0xec], ebx
mov dword [esp + 0xf8], edx
mov dword [esp + 0x2c4], eax
mov edx, dword [eax]
mov ebx, dword [eax + 4]
mov dword [esp + 0xe8], ebx
mov ebp, dword [eax + 8]
mov dword [esp + 0xe4], ebp
mov esi, dword [eax + 0xc]
mov dword [esp + 0xe0], esi
nop
nop
mov dword [esp], ecx
mov dword [esp + 4], edx
call fcn.00468d80
mov eax, dword [esp + 8]
mov dword [esp + 0x2c0], eax
mov dword [esp], eax
call fcn.00491d50
mov eax, dword [esp + 8]
test eax, eax
jne 0x499fd1
mov eax, dword [esp + 0x94]
inc eax
mov dword [esp + 0xdc], eax
nop
mov ecx, dword [esp + 0x2c0]
mov dword [esp], ecx
call fcn.00468ec0
nop
mov eax, dword [esp + 4]
mov dword [esp + 0xd8], eax
nop
mov ecx, dword [esp + 0x2cc]
mov dword [esp], ecx
mov edx, dword [esp + 0xe8]
mov dword [esp + 4], edx
call fcn.00468dc0
mov eax, dword [esp + 8]
nop
mov dword [esp], eax
call fcn.00468ec0
nop
mov eax, dword [esp + 4]
mov dword [esp + 0xd4], eax
nop
mov ecx, dword [esp + 0x2cc]
mov dword [esp], ecx
mov edx, dword [esp + 0xe4]
mov dword [esp + 4], edx
call fcn.00468e00
mov eax, dword [esp + 8]
nop
mov dword [esp], eax
call fcn.00468ec0
nop
mov eax, dword [esp + 4]
mov dword [esp + 0xd0], eax
nop
mov ecx, dword [esp + 0x2cc]
mov dword [esp], ecx
mov edx, dword [esp + 0xe0]
mov dword [esp + 4], edx
call fcn.00468e00
mov eax, dword [esp + 8]
nop
mov dword [esp], eax
call fcn.00468ec0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xec]
mov edx, dword [esp + 0xdc]
cmp ecx, edx
jb 0x499f6e
mov ebx, dword [esp + 0x2a0]
jmp 0x499dc0
mov dword [esp + 0xcc], eax
mov eax, dword [esp + 0x2a0]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x64cdc0]
mov dword [esp + 0x10], eax
call fcn.00451aa0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov edx, ecx
mov ecx, ebx
mov ebx, eax
mov eax, dword [esp + 0xcc]
jmp 0x499dc0
mov eax, ebx
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x2a0]
jmp 0x499db7
lea eax, [0x62efe0]
mov dword [esp], eax
lea eax, [0x701010]
mov dword [esp + 4], eax
call fcn.0043c340
mov edx, edi
mov ebx, 0x10000
call fcn.0046bfb0
lea eax, [0x62efe0]
mov dword [esp], eax
lea eax, [0x701028]
mov dword [esp + 4], eax
call fcn.0043c340
lea eax, [0x62efe0]
mov dword [esp], eax
lea eax, [0x701018]
mov dword [esp + 4], eax
call fcn.0043c340
mov ebp, dword [ecx + 0x20]
movzx esi, byte [ebp + 0xc]
xchg esi, eax
test al, 1
xchg esi, eax
jne 0x49a037
xor ebp, ebp
jmp 0x49a096
movzx esi, byte [ebp + 0xf]
and esi, 0x1f
cmp esi, 0x14
ja 0x49a06b
cmp esi, 0x12
ja 0x49a05c
cmp esi, 0x11
jne 0x49a052
add ebp, 0x2c
jmp 0x49a096
cmp esi, 0x12
jne 0x49a093
add ebp, 0x28
jmp 0x49a096
cmp esi, 0x13
jne 0x49a066
add ebp, 0x24
jmp 0x49a096
add ebp, 0x30
jmp 0x49a096
cmp esi, 0x16
ja 0x49a07f
cmp esi, 0x15
jne 0x49a07a
add ebp, 0x38
jmp 0x49a096
add ebp, 0x24
jmp 0x49a096
cmp esi, 0x17
jne 0x49a089
add ebp, 0x24
jmp 0x49a096
cmp esi, 0x19
jne 0x49a093
add ebp, 0x30
jmp 0x49a096
add ebp, 0x20
test ebp, ebp
je 0x49a0c5
movzx esi, word [ebp + 4]
test si, si
jne 0x49a0a9
xor ebp, ebp
xor esi, esi
jmp 0x49a0bd
mov edi, dword [ebp + 8]
movzx esi, si
add ebp, edi
cmp esi, 0x10000
ja 0x49a2d6
mov dword [esp + 0x54], esi
xor edi, edi
jmp 0x49a11d
mov ebp, eax
mov eax, edx
mov edx, ebp
jmp 0x499db7
lea ebp, [edx - 1]
shl ebp, 4
mov esi, dword [esp + 0xd8]
mov dword [ebx + ebp], esi
mov esi, dword [esp + 0xd4]
mov dword [ebx + ebp + 4], esi
mov esi, dword [esp + 0xd0]
mov dword [ebx + ebp + 8], esi
mov dword [ebx + ebp + 0xc], eax
mov eax, dword [esp + 0x2c4]
lea ebp, [eax + 0x10]
mov eax, dword [esp + 0xf8]
lea edi, [eax + 1]
mov esi, dword [esp + 0x54]
mov eax, edx
mov edx, ecx
mov ecx, dword [esp + 0x2cc]
cmp edi, esi
jge 0x49a0c5
mov dword [esp + 0xc8], edx
mov dword [esp + 0x2a8], ebx
mov dword [esp + 0xc4], eax
mov dword [esp + 0xf8], edi
mov dword [esp + 0x2c4], ebp
mov eax, dword [ebp]
mov edx, dword [ebp + 4]
mov dword [esp + 0xe8], edx
mov ebx, dword [ebp + 8]
mov dword [esp + 0xe4], ebx
mov esi, dword [ebp + 0xc]
mov dword [esp + 0xe0], esi
nop
nop
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00468d80
mov eax, dword [esp + 8]
mov dword [esp + 0x2c0], eax
mov dword [esp], eax
call fcn.00491d50
mov eax, dword [esp + 8]
test eax, eax
jne 0x49a2be
mov eax, dword [esp + 0xc4]
inc eax
mov dword [esp + 0xdc], eax
nop
mov ecx, dword [esp + 0x2c0]
mov dword [esp], ecx
call fcn.00468ec0
mov eax, dword [esp + 0x2cc]
mov ecx, dword [eax + 0x20]
mov edx, dword [esp + 4]
mov dword [esp + 0xd8], edx
nop
mov dword [esp], ecx
mov ecx, dword [esp + 0xe8]
mov dword [esp + 4], ecx
call fcn.00468dc0
mov eax, dword [esp + 8]
mov dword [esp], eax
call fcn.00468ec0
mov eax, dword [esp + 0x2cc]
mov ecx, dword [eax + 0x20]
mov edx, dword [esp + 4]
mov dword [esp + 0xd4], edx
nop
mov dword [esp], ecx
mov ecx, dword [esp + 0xe4]
mov dword [esp + 4], ecx
call fcn.00468e00
mov eax, dword [esp + 8]
mov dword [esp], eax
call fcn.00468ec0
mov eax, dword [esp + 0x2cc]
mov ecx, dword [eax + 0x20]
mov edx, dword [esp + 4]
mov dword [esp + 0xd0], edx
nop
mov dword [esp], ecx
mov ecx, dword [esp + 0xe0]
mov dword [esp + 4], ecx
call fcn.00468e00
mov eax, dword [esp + 8]
mov dword [esp], eax
call fcn.00468ec0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xc8]
mov edx, dword [esp + 0xdc]
cmp ecx, edx
jb 0x49a272
mov ebx, dword [esp + 0x2a8]
jmp 0x49a0d0
mov dword [esp + 0xcc], eax
mov eax, dword [esp + 0x2a8]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x64cdc0]
mov dword [esp + 0x10], eax
call fcn.00451aa0
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ecx, edx
mov edx, eax
mov eax, dword [esp + 0xcc]
jmp 0x49a0d0
lea eax, [0x62efe0]
mov dword [esp], eax
lea eax, [0x701010]
mov dword [esp + 4], eax
call fcn.0043c340
mov edx, esi
mov ebx, 0x10000
call fcn.0046bfb0
lea ebp, [edx - 1]
shl ebp, 4
mov esi, dword [esp + 0xd8]
mov dword [ebx + ebp], esi
mov esi, dword [esp + 0xd4]
mov dword [ebx + ebp + 4], esi
mov esi, dword [esp + 0xd0]
mov dword [ebx + ebp + 8], esi
mov dword [ebx + ebp + 0xc], eax
mov eax, dword [esp + 0x2c4]
add eax, 0x10
mov ebp, dword [esp + 0xf8]
inc ebp
mov esi, dword [esp + 0x4a8]
mov edi, dword [esp + 0x58]
mov dword [esp + 0x2a0], ebx
mov dword [esp + 0x94], edx
mov edx, ebp
mov ebx, ecx
mov ecx, dword [esp + 0x2cc]
mov ebp, dword [esp + 0xac]
cmp edx, edi
jge 0x49a4de
mov dword [esp + 0xc0], ebx
mov dword [esp + 0xf8], edx
mov dword [esp + 0x2c4], eax
mov edx, dword [eax]
mov ebx, dword [eax + 4]
mov dword [esp + 0xe8], ebx
mov ebp, dword [eax + 8]
mov dword [esp + 0xe4], ebp
mov esi, dword [eax + 0xc]
mov dword [esp + 0xe0], esi
nop
nop
mov dword [esp], ecx
mov dword [esp + 4], edx
call fcn.00468d80
mov eax, dword [esp + 8]
mov dword [esp + 0x2c0], eax
mov dword [esp], eax
call fcn.00491d50
mov eax, dword [esp + 8]
test eax, eax
jne 0x49a4f3
mov eax, dword [esp + 0x94]
inc eax
mov dword [esp + 0xdc], eax
nop
mov ecx, dword [esp + 0x2c0]
mov dword [esp], ecx
call fcn.00468ec0
nop
mov eax, dword [esp + 4]
mov dword [esp + 0xd8], eax
nop
mov ecx, dword [esp + 0x2cc]
mov dword [esp], ecx
mov edx, dword [esp + 0xe8]
mov dword [esp + 4], edx
call fcn.00468dc0
mov eax, dword [esp + 8]
nop
mov dword [esp], eax
call fcn.00468ec0
nop
mov eax, dword [esp + 4]
mov dword [esp + 0xd4], eax
nop
mov ecx, dword [esp + 0x2cc]
mov dword [esp], ecx
mov edx, dword [esp + 0xe4]
mov dword [esp + 4], edx
call fcn.00468e00
mov eax, dword [esp + 8]
nop
mov dword [esp], eax
call fcn.00468ec0
nop
mov eax, dword [esp + 4]
mov dword [esp + 0xd0], eax
nop
mov ecx, dword [esp + 0x2cc]
mov dword [esp], ecx
mov edx, dword [esp + 0xe0]
mov dword [esp + 4], edx
call fcn.00468e00
mov eax, dword [esp + 8]
nop
mov dword [esp], eax
call fcn.00468ec0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xc0]
mov edx, dword [esp + 0xdc]
cmp ecx, edx
jb 0x49a490
mov ebx, dword [esp + 0x2a0]
jmp 0x49a2e2
mov dword [esp + 0xcc], eax
mov eax, dword [esp + 0x2a0]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x64cdc0]
mov dword [esp + 0x10], eax
call fcn.00451aa0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov edx, ecx
mov ecx, ebx
mov ebx, eax
mov eax, dword [esp + 0xcc]
jmp 0x49a2e2
mov eax, dword [esp + 0x94]
mov edx, ebx
mov ebx, dword [esp + 0x2a0]
jmp 0x49a025
lea eax, [0x62efe0]
mov dword [esp], eax
lea eax, [0x701010]
mov dword [esp + 4], eax
call fcn.0043c340
mov edx, edi
mov ebx, 0x10000
call fcn.0046bfb0
lea eax, [0x62efe0]
mov dword [esp], eax
lea eax, [0x701020]
mov dword [esp + 4], eax
call fcn.0043c340
lea eax, [0x62efe0]
mov dword [esp], eax
lea eax, [0x701018]
mov dword [esp + 4], eax
call fcn.0043c340
lea ebx, [edx - 1]
shl ebx, 4
mov ebp, dword [esp + 0xd8]
mov dword [esi + ebx], ebp
mov ebp, dword [esp + 0xd4]
mov dword [esi + ebx + 4], ebp
mov ebp, dword [esp + 0xd0]
mov dword [esi + ebx + 8], ebp
mov dword [esi + ebx + 0xc], eax
mov eax, dword [esp + 0xa4]
lea ebx, [eax + 1]
mov eax, dword [esp + 0x2b0]
mov ebp, ecx
mov edi, edx
mov ecx, dword [esp + 0x2cc]
mov edx, dword [esp + 0xf8]
cmp ebx, edx
jge 0x49a91c
mov dword [esp + 0xbc], ebp
mov dword [esp + 0xb8], edi
mov dword [esp + 0x2a4], esi
mov dword [esp + 0xa4], ebx
lea edx, [eax + ebx*8]
mov ebp, dword [edx]
mov dword [esp + 0xb4], ebp
mov edx, dword [edx + 4]
mov dword [esp + 0xe8], edx
nop
mov dword [esp], ecx
mov dword [esp + 4], ebp
call fcn.00468d80
mov eax, dword [esp + 8]
mov dword [esp], eax
call fcn.00491d50
mov eax, dword [esp + 8]
test eax, eax
jne 0x49a927
nop
nop
mov eax, dword [esp + 0x2cc]
mov dword [esp], eax
mov ecx, dword [esp + 0xe8]
mov dword [esp + 4], ecx
call fcn.00468dc0
mov eax, dword [esp + 8]
mov dword [esp + 0x2c4], eax
mov dword [esp + 0x30c], 0
mov dword [esp + 0x310], 0
mov dword [esp + 0x314], 0
mov dword [esp + 0x300], 0
mov dword [esp + 0x304], 0
mov dword [esp + 0x308], 0
mov ecx, dword [esp + 0x2cc]
movzx edx, byte [ecx + 0xf]
test dl, 0x20
je 0x49a74d
lea eax, [0x6407a0]
mov dword [esp], eax
call fcn.0040fcf0
mov eax, dword [esp + 4]
lea ecx, [0x49b140]
mov dword [eax], ecx
mov edx, dword [esp + 0xac]
mov dword [eax + 4], edx
mov ebx, dword [esp + 0xa4]
mov dword [eax + 8], ebx
lea ebp, [0x702820]
mov dword [esp], ebp
mov esi, dword [esp + 0x2c4]
mov dword [esp + 4], esi
mov dword [esp + 8], eax
call fcn.004919c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x300], eax
mov dword [esp + 0x304], ecx
mov dword [esp + 0x308], edx
lea eax, [0x6407a0]
mov dword [esp], eax
call fcn.0040fcf0
mov eax, dword [esp + 4]
lea ecx, [0x49b040]
mov dword [eax], ecx
mov edx, dword [esp + 0xac]
mov dword [eax + 4], edx
mov ebx, dword [esp + 0xa4]
mov dword [eax + 8], ebx
lea ebp, [0x702820]
mov dword [esp], ebp
mov esi, dword [esp + 0x2c4]
mov dword [esp + 4], esi
mov dword [esp + 8], eax
call fcn.004919c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x30c], eax
mov dword [esp + 0x310], ecx
mov dword [esp + 0x314], edx
jmp 0x49a825
lea eax, [0x6407a0]
mov dword [esp], eax
call fcn.0040fcf0
mov eax, dword [esp + 4]
lea ecx, [0x49af40]
mov dword [eax], ecx
mov edx, dword [esp + 0xac]
mov dword [eax + 4], edx
mov ebx, dword [esp + 0xa4]
mov dword [eax + 8], ebx
lea ebp, [0x702820]
mov dword [esp], ebp
mov esi, dword [esp + 0x2c4]
mov dword [esp + 4], esi
mov dword [esp + 8], eax
call fcn.004919c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x300], eax
mov dword [esp + 0x304], ecx
mov dword [esp + 0x308], edx
lea eax, [0x6407a0]
mov dword [esp], eax
call fcn.0040fcf0
mov eax, dword [esp + 4]
lea ecx, [0x49ae10]
mov dword [eax], ecx
mov edx, dword [esp + 0xac]
mov dword [eax + 4], edx
mov ebx, dword [esp + 0xa4]
mov dword [eax + 8], ebx
lea ebp, [0x702820]
mov dword [esp], ebp
mov esi, dword [esp + 0x2c4]
mov dword [esp + 4], esi
mov dword [esp + 8], eax
call fcn.004919c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x30c], eax
mov dword [esp + 0x310], ecx
mov dword [esp + 0x314], edx
mov eax, dword [esp + 0xb8]
inc eax
mov dword [esp + 0xdc], eax
nop
nop
mov ecx, dword [esp + 0x2cc]
mov dword [esp], ecx
mov edx, dword [esp + 0xb4]
mov dword [esp + 4], edx
call fcn.00468d80
mov eax, dword [esp + 8]
nop
mov dword [esp], eax
call fcn.00468ec0
nop
mov eax, dword [esp + 4]
mov dword [esp + 0xd8], eax
mov ecx, dword [esp + 0x2c4]
mov dword [esp], ecx
call fcn.00468ec0
nop
mov eax, dword [esp + 4]
mov dword [esp + 0xd4], eax
lea ecx, [esp + 0x30c]
mov dword [esp], ecx
call fcn.00468ec0
nop
mov eax, dword [esp + 4]
mov dword [esp + 0xd0], eax
lea ecx, [esp + 0x300]
mov dword [esp], ecx
call fcn.00468ec0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xbc]
mov edx, dword [esp + 0xdc]
cmp ecx, edx
jb 0x49a8d0
mov esi, dword [esp + 0x2a4]
jmp 0x49a547
mov dword [esp + 0xcc], eax
mov eax, dword [esp + 0x2a4]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 1
lea eax, [0x64cdc0]
mov dword [esp + 0x10], eax
call fcn.00451aa0
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
mov edx, eax
mov ecx, ebp
mov eax, dword [esp + 0xcc]
jmp 0x49a547
mov eax, ebp
mov edx, edi
mov ebx, esi
jmp 0x499db7
lea eax, [0x62efe0]
mov dword [esp], eax
lea eax, [0x701010]
mov dword [esp + 4], eax
call fcn.0043c340
mov dword [esp], ecx
call fcn.00491f70
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp], 0
lea edx, [0x68bffa]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x2e
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
call fcn.00455480
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0040d540
mov eax, dword [esp + 8]
lea ecx, [0x62efe0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0043c340
mov dword [esp], 0
lea eax, [0x68bfcc]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x2e
mov eax, dword [esp + 0x298]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0x10], eax
lea eax, [0x67d3f0]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 5
mov eax, dword [esp + 0x2c8]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x100]
mov dword [esp + 0x20], eax
call fcn.004555b0
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0040d540
mov eax, dword [esp + 8]
lea ecx, [0x62efe0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0043c340
mov eax, dword [esp + 0xac]
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 0xa
call fcn.0048bfb0
mov dword [esp], 0
lea eax, [0x685186]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x18
lea eax, [0x67f68d]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 0xc
call fcn.00455520
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0040d540
mov eax, dword [esp + 8]
lea ecx, [0x62efe0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0043c340
mov eax, dword [esp + 0xac]
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 4], eax
mov dword [esp], ecx
mov dword [esp + 8], 0xa
call fcn.0048bfb0
mov dword [esp], 0
lea eax, [0x685186]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x18
lea eax, [0x681a03]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 0x11
call fcn.00455520
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0040d540
mov eax, dword [esp + 8]
lea ecx, [0x62efe0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0043c340
mov eax, ebx
sar ebx, 0x1f
mov dword [esp + 4], ebx
mov dword [esp], eax
mov dword [esp + 8], 0xa
call fcn.0048bfb0
mov dword [esp], 0
lea eax, [0x685186]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x18
lea eax, [0x67f681]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 0xc
call fcn.00455520
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.0040d540
mov eax, dword [esp + 8]
lea ecx, [0x62efe0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0043c340
nop
call fcn.0043b8a0
add esp, 0x4a0
ret
call fcn.0046aab0
jmp fcn.00498060