Function at 0x486947
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0xcc
mov eax, dword [ebp + 0xc]
mov byte [ebp - 0x9c], al
mov eax, dword [0x59728c]
test eax, eax
jne 0x488cff
mov eax, dword [0x54a2d8]
mov dword [0xa684c8], eax
mov dword [0x54a2d8], 1
call fcn.0049b0b5
mov dword [0xa684cc], eax
call fcn.0049b0c1
mov dword [esp], eax
call fcn.0049af7b
call fcn.0049b0c1
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.0049a9c2
mov dword [0xa684d0], eax
mov eax, dword [0xa684d0]
cmp eax, 0xffffffff
jne 0x4869cc
mov dword [esp], 0x204
call fcn.00472150
call fcn.0049b0c1
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], eax
call fcn.0049a9c2
mov dword [0xa684d4], eax
mov eax, dword [0xa684d4]
cmp eax, 0xffffffff
jne 0x486a04
mov dword [esp], 0x205
call fcn.00472150
mov eax, dword [0x6bdb6c]
movzx eax, word [eax + 0x38]
cwde
mov dword [0xa684d8], eax
mov eax, dword [0x6bdb6c]
movzx eax, word [eax + 0x3a]
cwde
mov dword [0xa684dc], eax
mov eax, dword [0x6bdb6c]
movzx eax, byte [eax + 0x51]
movzx eax, al
mov dword [0xa684e0], eax
mov eax, dword [0x54a014]
mov dword [ebp - 0x74], eax
mov dword [0xa684e4], 0
mov eax, dword [0x6a76e4]
and eax, 0x40000000
test eax, eax
je 0x486a75
mov eax, dword [0x6a76e4]
and eax, 0x200
test eax, eax
je 0x486a75
mov dword [0x6a76e4], 0xfffffe00
mov dword [0xa684e4], 1
mov eax, dword [0x6bdb6c]
movzx eax, byte [eax + 0x3c]
movzx eax, al
mov dword [0xa429a4], eax
mov eax, dword [0x6bdb6c]
mov byte [eax + 0x3c], 1
mov dword [ebp - 0x30], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.0047386a
mov dword [ebp - 0x78], eax
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.0047386a
mov dword [ebp - 0x7c], eax
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.0047386a
mov dword [ebp - 0x80], eax
mov dword [esp + 4], 0
mov dword [esp], 1
call fcn.0047386a
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x1c], 1
jmp 0x486b22
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.0047386a
mov edx, eax
mov eax, dword [ebp - 0x1c]
mov dword [eax*4 + 0xa425a0], edx
add dword [ebp - 0x1c], 1
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp + 8]
setle al
test al, al
jne 0x486afe
mov dword [ebp - 0x1c], 1
jmp 0x486beb
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x40000000
test eax, eax
je 0x486ba2
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax*4 + 0x6a72c0]
movzx eax, byte [eax + 0x20]
test al, al
je 0x486b91
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax*4 + 0x6a72c0]
mov eax, dword [eax + 4]
mov edx, eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax*4 + 0x6a72c0]
mov eax, dword [eax]
mov dword [esp + 8], edx
mov dword [esp + 4], 0x20
mov dword [esp], eax
call sub.msvcrt.dll_memset
jmp 0x486ba2
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax*4 + 0x6a72c0]
mov dword [eax + 4], 0
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x1000000
test eax, eax
jne 0x486be7
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x1ff
sar eax, 3
mov edx, eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax*4 + 0x6a72c0]
mov dword [esp + 8], edx
mov dword [esp + 4], 0
mov dword [esp], eax
call sub.msvcrt.dll_memset
add dword [ebp - 0x1c], 1
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp + 8]
setle al
test al, al
jne 0x486b3b
jmp 0x486c14
nop
jmp 0x486c14
nop
jmp 0x486c14
nop
jmp 0x486c14
nop
jmp 0x486c14
nop
jmp 0x486c14
nop
jmp 0x486c14
nop
jmp 0x486c14
nop
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x34], 1
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov eax, dword [0xa425a4]
mov dword [eax + 4], 0
mov dword [ebp - 0x38], 1
mov eax, dword [ebp - 0x78]
mov eax, dword [eax + 4]
cmp eax, dword [ebp - 0x1c]
jle 0x486d52
mov eax, dword [ebp - 0x78]
mov edx, dword [eax]
mov eax, dword [ebp - 0x1c]
add eax, edx
movzx eax, byte [eax]
cmp al, 0x2c
jne 0x486cae
cmp dword [ebp - 0x20], 1
je 0x486cae
mov eax, dword [0xa684e4]
test eax, eax
jne 0x486cae
mov dword [ebp - 0x20], 0
add dword [ebp - 0x34], 1
mov eax, dword [ebp - 0x34]
cmp eax, dword [ebp + 8]
jle 0x486c91
mov dword [ebp - 0x3c], 1
jmp 0x486d52
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa425a0]
mov dword [eax + 4], 0
mov dword [ebp - 0x38], 1
jmp 0x486d49
mov eax, dword [ebp - 0x78]
mov edx, dword [eax]
mov eax, dword [ebp - 0x1c]
add eax, edx
movzx eax, byte [eax]
cmp al, 0x22
jne 0x486ced
cmp dword [ebp - 0x38], 0
je 0x486cde
mov eax, dword [0xa684e4]
test eax, eax
jne 0x486cde
mov dword [ebp - 0x20], 1
mov dword [ebp - 0x38], 0
jmp 0x486d49
cmp dword [ebp - 0x20], 1
jne 0x486ced
mov dword [ebp - 0x20], 2
jmp 0x486d49
cmp dword [ebp - 0x20], 2
je 0x488b6f
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x78]
mov edx, dword [eax]
mov eax, dword [ebp - 0x1c]
add eax, edx
movzx eax, byte [eax]
mov byte [ecx], al
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0xa425a0]
mov eax, dword [ebp - 0x84]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.00474195
mov edx, eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa425a0]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004739d1
mov dword [ebp - 0x38], 0
add dword [ebp - 0x1c], 1
jmp 0x486c43
cmp dword [ebp - 0x3c], 0
jne 0x488b72
mov dword [ebp - 0x88], 0xffffffff
mov byte [ebp - 0x3d], 1
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa425a0]
mov eax, dword [eax + 4]
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa425a0]
mov eax, dword [eax]
mov dword [ebp - 0x90], eax
mov byte [ebp - 0x3e], 0
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x40000000
test eax, eax
jne 0x487283
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x20000000
test eax, eax
jne 0x487283
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x1ff
cmp eax, 0x20
jg 0x487283
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0
cmp dword [ebp - 0x8c], 0
jne 0x486e05
mov dword [ebp - 0x88], 0x30
jmp 0x487233
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x1ff
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x50], 1
mov dword [ebp - 0x4c], 0
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x50]
mov edx, dword [ebp - 0x4c]
shld edx, eax, cl
shl eax, cl
test cl, 0x20
je 0x486e3c
mov edx, eax
xor eax, eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
add dword [ebp - 0x50], 0xffffffff
adc dword [ebp - 0x4c], 0xffffffff
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa425a0]
mov dword [esp], eax
call fcn.004865d7
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
setne al
test al, al
je 0x48700e
mov eax, dword [0xa42178]
mov edx, dword [0xa4217c]
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
mov eax, dword [ebp - 0x70]
mov edx, dword [ebp - 0x6c]
cmp edx, dword [ebp - 0x4c]
jb 0x486e9d
cmp edx, dword [ebp - 0x4c]
ja 0x486e94
cmp eax, dword [ebp - 0x50]
jbe 0x486e9d
mov byte [ebp - 0x3d], 0
jmp 0x488431
cmp dword [ebp - 0x24], 1
jne 0x486f40
mov eax, dword [ebp - 0x50]
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 1
jmp 0x486ef8
mov eax, dword [ebp - 0x68]
mov esi, eax
and esi, 0xf
mov eax, dword [ebp - 0x64]
mov edi, eax
and edi, 0
mov eax, edi
or eax, esi
test eax, eax
je 0x486ee1
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x68]
mov edx, dword [ebp - 0x64]
shrd eax, edx, 4
shr edx, 4
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], edx
add dword [ebp - 0x20], 1
cmp dword [ebp - 0x20], 0x10
setle al
test al, al
jne 0x486ec3
mov eax, dword [ebp - 0x1c]
add eax, 2
cmp eax, dword [ebp - 0x8c]
jge 0x486f1a
mov byte [ebp - 0x3d], 0
jmp 0x488431
cmp dword [ebp - 0x8c], 1
jne 0x486f2d
mov dword [ebp - 0x88], 0x48
cmp dword [ebp - 0x8c], 2
jne 0x486f40
mov dword [ebp - 0x88], 0x30
cmp dword [ebp - 0x24], 2
jne 0x486ff7
mov eax, dword [ebp - 0x50]
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 1
jmp 0x486faf
mov eax, dword [ebp - 0x68]
mov edx, eax
and edx, 7
mov dword [ebp - 0xb0], edx
mov eax, dword [ebp - 0x64]
mov ecx, eax
and ecx, 0
mov dword [ebp - 0xac], ecx
mov eax, dword [ebp - 0xac]
or eax, dword [ebp - 0xb0]
test eax, eax
je 0x486f98
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x68]
mov edx, dword [ebp - 0x64]
shrd eax, edx, 3
shr edx, 3
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], edx
add dword [ebp - 0x20], 1
cmp dword [ebp - 0x20], 0x16
setle al
test al, al
jne 0x486f66
mov eax, dword [ebp - 0x1c]
add eax, 2
cmp eax, dword [ebp - 0x8c]
jge 0x486fd1
mov byte [ebp - 0x3d], 0
jmp 0x488431
cmp dword [ebp - 0x8c], 1
jne 0x486fe4
mov dword [ebp - 0x88], 0x6f
cmp dword [ebp - 0x8c], 2
jne 0x486ff7
mov dword [ebp - 0x88], 0x30
mov eax, dword [ebp - 0x70]
mov edx, dword [ebp - 0x6c]
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], edx
jmp 0x487233
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x10000000
test eax, eax
je 0x487031
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0
jmp 0x487055
mov eax, dword [ebp - 0x50]
mov edx, dword [ebp - 0x4c]
shrd eax, edx, 1
shr edx, 1
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], edx
mov eax, dword [ebp - 0x50]
mov edx, dword [ebp - 0x4c]
add eax, 1
adc edx, 0
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x10000000
test eax, eax
jne 0x4870a1
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x90]
add eax, edx
movzx eax, byte [eax]
cmp al, 0x2d
jne 0x4870a1
cmp dword [ebp - 0x8c], 1
jne 0x487099
mov dword [ebp - 0x88], 0x30
jmp 0x487233
add dword [ebp - 0x20], 1
mov byte [ebp - 0x3e], 1
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x90]
add eax, edx
movzx eax, byte [eax]
cmp al, 0x30
jne 0x4870ca
mov eax, dword [ebp - 0x20]
add eax, 1
cmp eax, dword [ebp - 0x8c]
jge 0x4870ca
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov dword [ebp - 0x60], 1
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0
mov eax, dword [ebp - 0x8c]
sub eax, 1
mov dword [ebp - 0x1c], eax
jmp 0x4871ef
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x90]
add eax, edx
movzx eax, byte [eax]
movzx eax, al
sub eax, 0x30
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
js 0x4871ba
cmp dword [ebp - 0x24], 9
jg 0x4871ba
mov eax, dword [ebp - 0x24]
mov edx, eax
sar edx, 0x1f
mov ecx, dword [ebp - 0x60]
mov ebx, ecx
imul ebx, edx
mov ecx, dword [ebp - 0x5c]
imul ecx, eax
add ecx, ebx
mul dword [ebp - 0x60]
add ecx, edx
mov edx, ecx
add dword [ebp - 0x68], eax
adc dword [ebp - 0x64], edx
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x10000000
test eax, eax
je 0x487178
mov eax, dword [ebp - 0x68]
mov edx, dword [ebp - 0x64]
cmp edx, dword [ebp - 0x4c]
jb 0x4871c3
cmp edx, dword [ebp - 0x4c]
ja 0x48716f
cmp eax, dword [ebp - 0x50]
jbe 0x4871c3
mov byte [ebp - 0x3d], 0
jmp 0x488431
cmp byte [ebp - 0x3e], 0
je 0x48719c
mov eax, dword [ebp - 0x68]
mov edx, dword [ebp - 0x64]
cmp edx, dword [ebp - 0x54]
jb 0x4871c3
cmp edx, dword [ebp - 0x54]
ja 0x487193
cmp eax, dword [ebp - 0x58]
jbe 0x4871c3
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov eax, dword [ebp - 0x68]
mov edx, dword [ebp - 0x64]
cmp edx, dword [ebp - 0x4c]
jb 0x4871c3
cmp edx, dword [ebp - 0x4c]
ja 0x4871b1
cmp eax, dword [ebp - 0x50]
jbe 0x4871c3
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov byte [ebp - 0x3d], 0
jmp 0x488431
nop
mov eax, dword [ebp - 0x5c]
imul edx, eax, 0xa
mov eax, dword [ebp - 0x60]
imul eax, eax, 0
lea ecx, [edx + eax]
mov eax, 0xa
mul dword [ebp - 0x60]
add ecx, edx
mov edx, ecx
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
sub dword [ebp - 0x1c], 1
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x20]
setge al
test al, al
jne 0x4870f7
cmp byte [ebp - 0x3e], 0
je 0x487221
mov eax, dword [ebp - 0x68]
mov edx, dword [ebp - 0x64]
neg eax
adc edx, 0
neg edx
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], edx
jmp 0x487233
mov eax, dword [ebp - 0x68]
mov edx, dword [ebp - 0x64]
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], edx
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x1000000
test eax, eax
jne 0x488431
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x1ff
sar eax, 3
mov edx, eax
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax*4 + 0x6a72c0]
mov dword [esp + 8], edx
lea eax, [ebp - 0x98]
mov dword [esp + 4], eax
mov dword [esp], ecx
call sub.msvcrt.dll_memcpy
jmp 0x488431
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x40000000
test eax, eax
je 0x4872eb
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a72c0]
movzx eax, byte [eax + 0x20]
test al, al
je 0x4872c6
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a72c0]
mov eax, dword [eax + 4]
cmp eax, dword [ebp - 0x8c]
jge 0x4872c6
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0xa425a0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a72c0]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004739d1
jmp 0x488431
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x40000000
test eax, eax
jne 0x487691
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x20000000
test eax, eax
jne 0x487691
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x1ff
cmp eax, 0x40
jne 0x487691
cmp dword [ebp - 0x8c], 0
jne 0x487360
mov dword [ebp - 0x88], 0x30
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a72c0]
mov dword [eax], 0
mov dword [eax + 4], 0
jmp 0x488431
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa425a0]
mov dword [esp], eax
call fcn.004865d7
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
setne al
test al, al
je 0x487412
mov eax, dword [0xa42178]
mov edx, dword [0xa4217c]
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
mov eax, dword [ebp - 0x70]
mov edx, dword [ebp - 0x6c]
cmp edx, dword [ebp - 0x4c]
jb 0x4873b3
cmp edx, dword [ebp - 0x4c]
ja 0x4873aa
cmp eax, dword [ebp - 0x50]
jbe 0x4873b3
mov byte [ebp - 0x3d], 0
jmp 0x488431
cmp dword [ebp - 0x24], 1
jne 0x4873cc
cmp dword [ebp - 0x8c], 1
jne 0x4873cc
mov dword [ebp - 0x88], 0x48
cmp dword [ebp - 0x24], 2
jne 0x4873e5
cmp dword [ebp - 0x8c], 1
jne 0x4873e5
mov dword [ebp - 0x88], 0x6f
cmp dword [ebp - 0x8c], 2
jne 0x4873f8
mov dword [ebp - 0x88], 0x30
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax*4 + 0x6a72c0]
mov eax, dword [ebp - 0x70]
mov edx, dword [ebp - 0x6c]
mov dword [ecx], eax
mov dword [ecx + 4], edx
jmp 0x488431
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x10000000
test eax, eax
jne 0x487475
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x90]
add eax, edx
movzx eax, byte [eax]
cmp al, 0x2d
jne 0x487475
cmp dword [ebp - 0x8c], 1
jne 0x48746d
mov dword [ebp - 0x88], 0x30
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a72c0]
mov dword [eax], 0
mov dword [eax + 4], 0
jmp 0x488431
add dword [ebp - 0x20], 1
mov byte [ebp - 0x3e], 1
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x90]
add eax, edx
movzx eax, byte [eax]
cmp al, 0x30
jne 0x48749e
mov eax, dword [ebp - 0x20]
add eax, 1
cmp eax, dword [ebp - 0x8c]
jge 0x48749e
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov dword [ebp - 0x28], 0
mov eax, dword [ebp - 0x8c]
sub eax, 1
mov dword [ebp - 0x1c], eax
jmp 0x4874e7
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x90]
add eax, edx
movzx eax, byte [eax]
movzx eax, al
sub eax, 0x30
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
js 0x4874d6
cmp dword [ebp - 0x24], 9
jle 0x4874df
mov byte [ebp - 0x3d], 0
jmp 0x488431
add dword [ebp - 0x28], 1
sub dword [ebp - 0x1c], 1
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x20]
setge al
test al, al
jne 0x4874b3
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x10000000
test eax, eax
je 0x48752a
cmp dword [ebp - 0x28], 0x13
jle 0x4875da
cmp dword [ebp - 0x28], 0x14
jle 0x487520
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov eax, dword [str.18446744073709551615]
mov dword [ebp - 0x44], eax
jmp 0x48755b
cmp dword [ebp - 0x28], 0x12
jle 0x4875dd
cmp dword [ebp - 0x28], 0x13
jle 0x487543
mov byte [ebp - 0x3d], 0
jmp 0x488431
cmp byte [ebp - 0x3e], 0
je 0x487553
mov eax, dword [str.9223372036854775808]
mov dword [ebp - 0x44], eax
jmp 0x48755b
mov eax, dword [str.9223372036854775807]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa425a0]
mov eax, dword [eax]
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x1c], 0
jmp 0x4875cb
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
add eax, edx
mov edx, eax
mov eax, dword [ebp - 0x90]
add eax, edx
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x44]
add eax, edx
movzx eax, byte [eax]
cmp cl, al
jb 0x4875e0
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
add eax, edx
mov edx, eax
mov eax, dword [ebp - 0x90]
add eax, edx
movzx ecx, byte [eax]
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x44]
add eax, edx
movzx eax, byte [eax]
cmp cl, al
jbe 0x4875c7
mov byte [ebp - 0x3d], 0
jmp 0x488431
add dword [ebp - 0x1c], 1
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x28]
setl al
test al, al
jne 0x487576
jmp 0x4875e1
nop
jmp 0x4875e1
nop
jmp 0x4875e1
nop
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov byte [eax], 0
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0xa425a0]
mov eax, dword [ebp - 0x84]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.00474195
mov edx, eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa425a0]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004739d1
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x10000000
test eax, eax
je 0x487662
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0x6a72c0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa425a0]
mov eax, dword [eax]
mov dword [esp + 8], edx
mov dword [esp + 4], str._I64u
mov dword [esp], eax
call sub.msvcrt.dll_sscanf
jmp 0x488431
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0x6a72c0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa425a0]
mov eax, dword [eax]
mov dword [esp + 8], edx
mov dword [esp + 4], str._I64i
mov dword [esp], eax
call sub.msvcrt.dll_sscanf
jmp 0x488431
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x20000000
test eax, eax
je 0x488431
mov dword [0xa684e8], 0
mov dword [0xa684ec], 0
mov dword [0xa684f0], 0
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0
mov dword [0xa684f4], 0
mov dword [0xa42580], 0
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x1ff
cmp eax, 0x20
jne 0x48770d
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0x6a72c0]
mov eax, dword [0x57a2d8]
mov dword [edx], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x1ff
cmp eax, 0x40
jne 0x48772f
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a72c0]
fldz
fstp qword [eax]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x1ff
cmp eax, 0x100
jne 0x487766
mov eax, dword [ebp - 0x34]
mov ebx, dword [eax*4 + 0x6a72c0]
mov eax, 0
mov edx, 0
mov ecx, 0
mov dword [ebx], eax
mov dword [ebx + 4], edx
mov dword [ebx + 8], ecx
cmp dword [ebp - 0x8c], 0
jne 0x48777e
mov dword [ebp - 0x88], 0x30
jmp 0x488431
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa425a0]
mov dword [esp], eax
call fcn.004865d7
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
setne al
test al, al
je 0x487a83
mov eax, dword [0xa42178]
mov edx, dword [0xa4217c]
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
cmp dword [ebp - 0x24], 1
jne 0x4877cc
cmp dword [ebp - 0x8c], 1
jne 0x4877cc
mov dword [ebp - 0x88], 0x48
cmp dword [ebp - 0x24], 2
jne 0x4877e5
cmp dword [ebp - 0x8c], 1
jne 0x4877e5
mov dword [ebp - 0x88], 0x6f
cmp dword [ebp - 0x8c], 2
jne 0x4877f8
mov dword [ebp - 0x88], 0x30
mov dword [0xa684f8], 0x7fffffff
mov dword [0xa684fc], 0
mov eax, dword [0xa684f8]
mov edx, dword [0xa684fc]
mov edx, eax
mov eax, 0
mov dword [0xa684f8], eax
mov dword [0xa684fc], edx
mov eax, dword [0xa684f8]
mov edx, dword [0xa684fc]
mov ecx, eax
or ecx, 0xffffffff
mov dword [ebp - 0xb8], ecx
mov ecx, edx
or ch, 0
mov dword [ebp - 0xb4], ecx
mov eax, dword [ebp - 0xb8]
mov edx, dword [ebp - 0xb4]
mov dword [0xa684f8], eax
mov dword [0xa684fc], edx
jmp 0x48795a
mov eax, dword [0xa684f8]
mov edx, dword [0xa684fc]
sub dword [ebp - 0x70], eax
sbb dword [ebp - 0x6c], edx
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x1ff
cmp eax, 0x20
jne 0x4878c2
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax*4 + 0x6a72c0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a72c0]
fld dword [eax]
mov eax, dword [0xa684f8]
mov edx, dword [0xa684fc]
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], edx
fild qword [ebp - 0xa8]
faddp st(1)
fstp dword [ecx]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x1ff
cmp eax, 0x40
jne 0x48790d
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax*4 + 0x6a72c0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a72c0]
fld qword [eax]
mov eax, dword [0xa684f8]
mov edx, dword [0xa684fc]
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], edx
fild qword [ebp - 0xa8]
faddp st(1)
fstp qword [ecx]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x1ff
cmp eax, 0x100
jne 0x48795a
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax*4 + 0x6a72c0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a72c0]
fld xword [eax]
mov eax, dword [0xa684f8]
mov edx, dword [0xa684fc]
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], edx
fild qword [ebp - 0xa8]
faddp st(1)
fstp xword [ecx]
mov eax, dword [0xa684f8]
mov edx, dword [0xa684fc]
mov ecx, 1
cmp edx, dword [ebp - 0x6c]
jb 0x48797e
cmp edx, dword [ebp - 0x6c]
ja 0x487979
cmp eax, dword [ebp - 0x70]
jb 0x48797e
mov ecx, 0
test cl, cl
jne 0x487866
mov eax, dword [ebp - 0x70]
mov edx, dword [ebp - 0x6c]
mov dword [0xa684f8], eax
mov dword [0xa684fc], edx
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x1ff
cmp eax, 0x20
jne 0x4879e2
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax*4 + 0x6a72c0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a72c0]
fld dword [eax]
mov eax, dword [0xa684f8]
mov edx, dword [0xa684fc]
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], edx
fild qword [ebp - 0xa8]
faddp st(1)
fstp dword [ecx]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x1ff
cmp eax, 0x40
jne 0x487a2d
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax*4 + 0x6a72c0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a72c0]
fld qword [eax]
mov eax, dword [0xa684f8]
mov edx, dword [0xa684fc]
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], edx
fild qword [ebp - 0xa8]
faddp st(1)
fstp qword [ecx]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x1ff
cmp eax, 0x100
jne 0x48842d
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax*4 + 0x6a72c0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a72c0]
fld xword [eax]
mov eax, dword [0xa684f8]
mov edx, dword [0xa684fc]
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], edx
fild qword [ebp - 0xa8]
faddp st(1)
fstp xword [ecx]
jmp 0x48842d
mov dword [ebp - 0x20], 0
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x90]
add eax, edx
movzx eax, byte [eax]
cmp al, 0x2d
jne 0x487abc
cmp dword [ebp - 0x8c], 1
jne 0x487ab4
mov dword [ebp - 0x88], 0x30
jmp 0x488431
add dword [ebp - 0x20], 1
mov byte [ebp - 0x3e], 1
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x90]
add eax, edx
movzx eax, byte [eax]
cmp al, 0x30
jne 0x487b03
mov eax, dword [ebp - 0x20]
add eax, 1
cmp eax, dword [ebp - 0x8c]
jge 0x488430
add dword [ebp - 0x20], 1
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x90]
add eax, edx
movzx eax, byte [eax]
cmp al, 0x2e
je 0x487bc6
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
jmp 0x487bad
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x90]
add eax, edx
movzx eax, byte [eax]
movzx eax, al
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0x44
je 0x487b3a
cmp dword [ebp - 0x24], 0x64
je 0x487b3a
cmp dword [ebp - 0x24], 0x45
je 0x487b3a
cmp dword [ebp - 0x24], 0x65
jne 0x487b56
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x20]
jne 0x487b4b
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
jmp 0x487cdc
cmp dword [ebp - 0x24], 0x2e
jne 0x487b64
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
jmp 0x487bc7
sub dword [ebp - 0x24], 0x30
cmp dword [ebp - 0x24], 0
js 0x487b74
cmp dword [ebp - 0x24], 9
jle 0x487b7d
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov eax, dword [0xa684e8]
add eax, 1
mov dword [0xa684e8], eax
mov edx, dword [0xa42580]
mov eax, dword [ebp - 0x24]
add eax, 0x30
mov byte [edx + 0xa42180], al
mov eax, dword [0xa42580]
add eax, 1
mov dword [0xa42580], eax
add dword [ebp - 0x1c], 1
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x8c]
setl al
test al, al
jne 0x487b0e
jmp 0x487eb6
nop
mov dword [ebp - 0x28], 1
mov eax, dword [ebp - 0x8c]
sub eax, 1
cmp eax, dword [ebp - 0x20]
jne 0x487beb
mov dword [ebp - 0x88], 0x30
jmp 0x487eb6
add dword [ebp - 0x20], 1
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
jmp 0x487cc3
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x90]
add eax, edx
movzx eax, byte [eax]
movzx eax, al
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0x44
je 0x487c26
cmp dword [ebp - 0x24], 0x64
je 0x487c26
cmp dword [ebp - 0x24], 0x45
je 0x487c26
cmp dword [ebp - 0x24], 0x65
jne 0x487c4b
mov eax, dword [0xa42580]
test eax, eax
je 0x487c4b
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x20]
jne 0x487c40
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
jmp 0x487cdc
sub dword [ebp - 0x24], 0x30
cmp dword [ebp - 0x24], 0
js 0x487c5b
cmp dword [ebp - 0x24], 9
jle 0x487c64
mov byte [ebp - 0x3d], 0
jmp 0x488431
cmp dword [ebp - 0x24], 0
je 0x487c71
mov dword [ebp - 0x28], 0
cmp dword [ebp - 0x28], 0
je 0x487c84
mov eax, dword [0xa684f4]
add eax, 1
mov dword [0xa684f4], eax
mov eax, dword [0xa684ec]
add eax, 1
mov dword [0xa684ec], eax
mov eax, dword [0xa42580]
test eax, eax
jne 0x487ca0
cmp dword [ebp - 0x24], 0
je 0x487cbf
mov edx, dword [0xa42580]
mov eax, dword [ebp - 0x24]
add eax, 0x30
mov byte [edx + 0xa42180], al
mov eax, dword [0xa42580]
add eax, 1
mov dword [0xa42580], eax
add dword [ebp - 0x1c], 1
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x8c]
setl al
test al, al
jne 0x487bfa
jmp 0x487eb6
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x1ff
cmp eax, 0x20
jne 0x487d19
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x90]
add eax, edx
movzx eax, byte [eax]
movzx eax, al
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0x44
je 0x487d10
cmp dword [ebp - 0x24], 0x64
jne 0x487d19
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x90]
add eax, edx
movzx eax, byte [eax]
movzx eax, al
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0x44
je 0x487d39
cmp dword [ebp - 0x24], 0x64
jne 0x487d47
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x90]
add eax, edx
mov byte [eax], 0x45
mov eax, dword [ebp - 0x8c]
sub eax, 1
cmp eax, dword [ebp - 0x20]
jne 0x487d64
mov dword [ebp - 0x88], 0x30
jmp 0x487eb6
add dword [ebp - 0x20], 1
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x90]
add eax, edx
movzx eax, byte [eax]
movzx eax, al
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0x2d
jne 0x487dad
mov eax, dword [ebp - 0x8c]
sub eax, 1
cmp eax, dword [ebp - 0x20]
jne 0x487d9f
mov dword [ebp - 0x88], 0x30
jmp 0x487eb6
mov dword [0xa684f0], 1
add dword [ebp - 0x20], 1
cmp dword [ebp - 0x24], 0x2b
jne 0x487dd4
mov eax, dword [ebp - 0x8c]
sub eax, 1
cmp eax, dword [ebp - 0x20]
jne 0x487dd0
mov dword [ebp - 0x88], 0x30
jmp 0x487eb6
add dword [ebp - 0x20], 1
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x90]
add eax, edx
movzx eax, byte [eax]
cmp al, 0x30
jne 0x487dfd
mov eax, dword [ebp - 0x20]
add eax, 1
cmp eax, dword [ebp - 0x8c]
jge 0x487dfd
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov dword [ebp - 0x60], 1
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0
mov eax, dword [ebp - 0x8c]
sub eax, 1
mov dword [ebp - 0x1c], eax
jmp 0x487ea5
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x90]
add eax, edx
movzx eax, byte [eax]
movzx eax, al
sub eax, 0x30
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
js 0x487e9c
cmp dword [ebp - 0x24], 9
jg 0x487e9c
mov eax, dword [ebp - 0x24]
mov edx, eax
sar edx, 0x1f
mov ecx, dword [ebp - 0x60]
mov ebx, ecx
imul ebx, edx
mov ecx, dword [ebp - 0x5c]
imul ecx, eax
add ecx, ebx
mul dword [ebp - 0x60]
add ecx, edx
mov edx, ecx
add dword [ebp - 0x68], eax
adc dword [ebp - 0x64], edx
mov eax, dword [ebp - 0x5c]
imul edx, eax, 0xa
mov eax, dword [ebp - 0x60]
imul eax, eax, 0
lea ecx, [edx + eax]
mov eax, 0xa
mul dword [ebp - 0x60]
add ecx, edx
mov edx, ecx
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], edx
sub dword [ebp - 0x1c], 1
jmp 0x487ea5
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x20]
setge al
test al, al
jne 0x487e27
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x1ff
cmp eax, 0x20
jne 0x488124
mov eax, dword [0xa684f0]
test eax, eax
je 0x487ee1
neg dword [ebp - 0x68]
adc dword [ebp - 0x64], 0
neg dword [ebp - 0x64]
mov eax, dword [0xa684f4]
cmp eax, 1
jne 0x487f09
mov eax, dword [0xa684ec]
cmp eax, 1
jne 0x487f09
mov dword [0xa684ec], 0
mov dword [0xa684f4], 0
mov eax, dword [0xa684f4]
cmp eax, 0x2b
jle 0x487f1c
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov eax, dword [0xa684e8]
test eax, eax
jne 0x487f38
mov edx, dword [0xa684ec]
mov eax, dword [0xa684f4]
cmp edx, eax
je 0x4880b2
mov eax, dword [0xa684e8]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jne 0x487f50
mov eax, dword [0xa684f4]
neg eax
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x1c]
add eax, edx
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x27
jle 0x487f6a
mov byte [ebp - 0x3d], 0
jmp 0x488431
cmp dword [ebp - 0x1c], 0x27
jne 0x487fe1
mov eax, dword [str.3402823]
mov dword [ebp - 0x44], eax
mov eax, dword [0xa42580]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 7
jle 0x487f8d
mov dword [ebp - 0x20], 7
mov dword [ebp - 0x24], 0
jmp 0x487fd1
mov eax, dword [ebp - 0x24]
add eax, 0xa42180
movzx edx, byte [eax]
mov eax, dword [ebp - 0x44]
movzx eax, byte [eax]
cmp dl, al
jbe 0x487fb4
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov eax, dword [ebp - 0x24]
add eax, 0xa42180
movzx edx, byte [eax]
mov eax, dword [ebp - 0x44]
movzx eax, byte [eax]
cmp dl, al
jb 0x487fe0
add dword [ebp - 0x44], 1
add dword [ebp - 0x24], 1
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x20]
setl al
test al, al
jne 0x487f96
jmp 0x487fe1
nop
mov eax, dword [0xa684ec]
test eax, eax
je 0x48802d
mov eax, dword [0xa684e8]
test eax, eax
je 0x48800e
mov edx, dword [0xa684ec]
mov eax, dword [0xa684e8]
add eax, edx
cmp eax, 8
jle 0x48802d
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov edx, dword [0xa684ec]
mov eax, dword [0xa684f4]
mov ecx, edx
sub ecx, eax
mov eax, ecx
cmp eax, 8
jle 0x48802d
mov byte [ebp - 0x3d], 0
jmp 0x488431
cmp dword [ebp - 0x1c], 0xffffffd4
jge 0x48803c
mov byte [ebp - 0x3d], 0
jmp 0x488431
cmp dword [ebp - 0x1c], 0xffffffd4
jne 0x4880b6
mov eax, dword [str.1401298]
mov dword [ebp - 0x44], eax
mov eax, dword [0xa42580]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 7
jle 0x48805f
mov dword [ebp - 0x20], 7
mov dword [ebp - 0x24], 0
jmp 0x4880a3
mov eax, dword [ebp - 0x24]
add eax, 0xa42180
movzx edx, byte [eax]
mov eax, dword [ebp - 0x44]
movzx eax, byte [eax]
cmp dl, al
jae 0x488086
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov eax, dword [ebp - 0x24]
add eax, 0xa42180
movzx edx, byte [eax]
mov eax, dword [ebp - 0x44]
movzx eax, byte [eax]
cmp dl, al
ja 0x4880b5
add dword [ebp - 0x44], 1
add dword [ebp - 0x24], 1
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x20]
setl al
test al, al
jne 0x488068
jmp 0x4880b6
nop
jmp 0x4880b6
nop
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov byte [eax], 0
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0xa425a0]
mov eax, dword [ebp - 0x84]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.00474195
mov edx, eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa425a0]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004739d1
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0x6a72c0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa425a0]
mov eax, dword [eax]
mov dword [esp + 8], edx
mov dword [esp + 4], 0x5668f3
mov dword [esp], eax
call sub.msvcrt.dll_sscanf
jmp 0x488431
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x1ff
cmp eax, 0x40
jne 0x4883a0
mov eax, dword [0xa684f0]
test eax, eax
je 0x48814f
neg dword [ebp - 0x68]
adc dword [ebp - 0x64], 0
neg dword [ebp - 0x64]
mov eax, dword [0xa684f4]
cmp eax, 1
jne 0x488177
mov eax, dword [0xa684ec]
cmp eax, 1
jne 0x488177
mov dword [0xa684ec], 0
mov dword [0xa684f4], 0
mov eax, dword [0xa684f4]
cmp eax, 0x142
jle 0x48818c
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov eax, dword [0xa684e8]
test eax, eax
jne 0x4881a8
mov edx, dword [0xa684ec]
mov eax, dword [0xa684f4]
cmp edx, eax
je 0x48832e
mov eax, dword [0xa684e8]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jne 0x4881c0
mov eax, dword [0xa684f4]
neg eax
mov dword [ebp - 0x1c], eax
mov edx, dword [ebp - 0x68]
mov eax, dword [ebp - 0x1c]
add eax, edx
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x135
jle 0x4881dd
mov byte [ebp - 0x3d], 0
jmp 0x488431
cmp dword [ebp - 0x1c], 0x135
jne 0x488257
mov eax, dword [str.17976931]
mov dword [ebp - 0x44], eax
mov eax, dword [0xa42580]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 8
jle 0x488203
mov dword [ebp - 0x20], 8
mov dword [ebp - 0x24], 0
jmp 0x488247
mov eax, dword [ebp - 0x24]
add eax, 0xa42180
movzx edx, byte [eax]
mov eax, dword [ebp - 0x44]
movzx eax, byte [eax]
cmp dl, al
jbe 0x48822a
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov eax, dword [ebp - 0x24]
add eax, 0xa42180
movzx edx, byte [eax]
mov eax, dword [ebp - 0x44]
movzx eax, byte [eax]
cmp dl, al
jb 0x488256
add dword [ebp - 0x44], 1
add dword [ebp - 0x24], 1
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x20]
setl al
test al, al
jne 0x48820c
jmp 0x488257
nop
mov eax, dword [0xa684ec]
test eax, eax
je 0x4882a3
mov eax, dword [0xa684e8]
test eax, eax
je 0x488284
mov edx, dword [0xa684ec]
mov eax, dword [0xa684e8]
add eax, edx
cmp eax, 0x10
jle 0x4882a3
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov edx, dword [0xa684ec]
mov eax, dword [0xa684f4]
mov ecx, edx
sub ecx, eax
mov eax, ecx
cmp eax, 0x10
jle 0x4882a3
mov byte [ebp - 0x3d], 0
jmp 0x488431
cmp dword [ebp - 0x1c], 0xfffffebd
jge 0x4882b5
mov byte [ebp - 0x3d], 0
jmp 0x488431
cmp dword [ebp - 0x1c], 0xfffffebd
jne 0x488332
mov eax, dword [str.4940656]
mov dword [ebp - 0x44], eax
mov eax, dword [0xa42580]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 7
jle 0x4882db
mov dword [ebp - 0x20], 7
mov dword [ebp - 0x24], 0
jmp 0x48831f
mov eax, dword [ebp - 0x24]
add eax, 0xa42180
movzx edx, byte [eax]
mov eax, dword [ebp - 0x44]
movzx eax, byte [eax]
cmp dl, al
jae 0x488302
mov byte [ebp - 0x3d], 0
jmp 0x488431
mov eax, dword [ebp - 0x24]
add eax, 0xa42180
movzx edx, byte [eax]
mov eax, dword [ebp - 0x44]
movzx eax, byte [eax]
cmp dl, al
ja 0x488331
add dword [ebp - 0x44], 1
add dword [ebp - 0x24], 1
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x20]
setl al
test al, al
jne 0x4882e4
jmp 0x488332
nop
jmp 0x488332
nop
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov byte [eax], 0
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0xa425a0]
mov eax, dword [ebp - 0x84]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.00474195
mov edx, eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa425a0]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004739d1
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0x6a72c0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa425a0]
mov eax, dword [eax]
mov dword [esp + 8], edx
mov dword [esp + 4], 0x5668f6
mov dword [esp], eax
call sub.msvcrt.dll_sscanf
jmp 0x488431
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a76e0]
and eax, 0x1ff
cmp eax, 0x100
jne 0x488431
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov byte [eax], 0
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0xa425a0]
mov eax, dword [ebp - 0x84]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.00474195
mov edx, eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa425a0]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004739d1
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa425a0]
mov eax, dword [eax]
mov dword [esp + 8], 0xa68500
mov dword [esp + 4], 0x5668f6
mov dword [esp], eax
call sub.msvcrt.dll_sscanf
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x6a72c0]
fld qword [0xa68500]
fstp xword [eax]
jmp 0x488431
nop
jmp 0x488431
nop
cmp byte [ebp - 0x3d], 0
je 0x488b75
mov eax, dword [ebp - 0x78]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x7c]
mov dword [esp], eax
call fcn.004739d1
jmp 0x488450
nop
mov dword [0xa68508], 0
jmp 0x48845d
nop
mov eax, dword [0x6bdb6c]
movzx eax, byte [eax + 0x11]
test al, al
jne 0x488692
mov dword [ebp - 0x1c], 1
mov eax, dword [0x6bdb6c]
mov eax, dword [eax + 0x30]
cmp eax, 0x1f
ja 0x4884a0
mov eax, dword [0x6bdb6c]
movzx eax, word [eax + 0x20]
cmp ax, 0x100
je 0x4884a0
mov eax, dword [0x6bdb6c]
movzx eax, word [eax + 0x20]
cmp ax, 0x20
jne 0x4884da
call fcn.00467a9f
mov ecx, eax
and ecx, 0x200
mov dword [ebp - 0xc0], ecx
mov ecx, edx
and ecx, 0
mov dword [ebp - 0xbc], ecx
mov eax, dword [ebp - 0xc0]
or eax, dword [ebp - 0xbc]
test eax, eax
setne al
test al, al
je 0x4884da
mov dword [ebp - 0x1c], 0
mov eax, dword [0xa68508]
cmp dword [ebp - 0x1c], eax
je 0x488692
mov eax, dword [0xa68508]
xor eax, 1
mov dword [0xa68508], eax
mov eax, dword [0x6bdb6c]
movzx eax, byte [eax + 0x50]
movzx eax, al
mov dword [0xa6850c], eax
mov eax, dword [0x6bdb6c]
mov byte [eax + 0x50], 1
mov edx, dword [0x6ad190]
mov eax, dword [0x6bdb6c]
mov eax, dword [eax + 0x30]
shl eax, 2
add eax, edx
mov eax, dword [eax]
mov dword [0xa68510], eax
mov edx, dword [0x6ad194]
mov eax, dword [0x6bdb6c]
mov eax, dword [eax + 0x30]
shl eax, 2
add eax, edx
mov eax, dword [eax]
mov dword [0xa68514], eax
mov eax, dword [0xa68514]
test eax, eax
jne 0x488556
mov dword [0xa68514], 1
mov eax, dword [0xa68514]
mov dword [0xa68518], eax
mov eax, dword [0x6bdb6c]
mov eax, dword [eax + 0x30]
cmp eax, 0x1f
ja 0x48858b
mov eax, dword [0x6bdb6c]
movzx eax, word [eax + 0x20]
cmp ax, 0x100
je 0x48858b
mov eax, dword [0x6bdb6c]
movzx eax, word [eax + 0x20]
cmp ax, 0x20
jne 0x488595
mov dword [0xa68518], 1
mov eax, dword [0x6bdb6c]
movzx eax, word [eax + 0x3a]
cwde
lea edx, [eax - 1]
mov eax, dword [0xa68510]
imul eax, edx
mov dword [0xa6851c], eax
mov dword [0xa68520], 0
jmp 0x48866c
mov eax, dword [0x6bdb6c]
movzx eax, word [eax + 0x38]
cwde
lea edx, [eax - 1]
mov eax, dword [0xa68514]
imul eax, edx
mov dword [0xa68524], eax
mov dword [0xa68528], 0
jmp 0x48863e
mov edx, dword [0xa6851c]
mov eax, dword [0xa68524]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.00481d5c
mov edx, eax
mov eax, dword [0x6bdb6c]
mov eax, dword [eax + 0x24]
mov ecx, edx
xor ecx, eax
mov edx, dword [0xa6851c]
mov eax, dword [0xa68524]
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.00468bea
mov eax, dword [0xa68524]
add eax, 1
mov dword [0xa68524], eax
mov eax, dword [0xa68528]
add eax, 1
mov dword [0xa68528], eax
mov edx, dword [0xa68528]
mov eax, dword [0xa68518]
cmp edx, eax
setl al
test al, al
jne 0x4885e4
mov eax, dword [0xa6851c]
add eax, 1
mov dword [0xa6851c], eax
mov eax, dword [0xa68520]
add eax, 1
mov dword [0xa68520], eax
mov edx, dword [0xa68520]
mov eax, dword [0xa68510]
cmp edx, eax
setl al
test al, al
jne 0x4885be
mov edx, dword [0x6bdb6c]
mov eax, dword [0xa6850c]
mov byte [edx + 0x50], al
cmp dword [ebp - 0x30], 0
je 0x4886c1
sub dword [ebp - 0x30], 1
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov byte [eax], 0x20
mov eax, dword [ebp - 0x84]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call fcn.004739d1
jmp 0x488797
mov eax, dword [0x6bdb6c]
movzx eax, byte [eax + 0x12]
test al, al
je 0x488746
mov dword [esp], 0x55f506
call fcn.00473656
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call fcn.004739d1
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], eax
call sub.msvcrt.dll_fgetc
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0xffffffff
je 0x488733
cmp dword [ebp - 0x2c], 0xa
jne 0x48870c
mov dword [ebp - 0x2c], 0xd
mov dword [esp], 0x5668fa
call fcn.00473656
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call fcn.004739d1
mov eax, dword [ebp - 0x80]
mov edx, dword [eax]
mov eax, dword [ebp - 0x2c]
mov byte [edx], al
jmp 0x488784
mov dword [esp], 0xa
mov eax, dword [sym.imp.KERNEL32.dll_Sleep]
call eax
sub esp, 4
jmp 0x488784
mov dword [esp], 0xa
mov eax, dword [sym.imp.KERNEL32.dll_Sleep]
call eax
sub esp, 4
call fcn.00475aaa
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call fcn.004739d1
mov dword [0x6ace78], 1
call fcn.00437cce
mov dword [0x6ace78], 0
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x74]
mov dword [esp], eax
call fcn.004c6589
movzx eax, byte [0x597299]
test al, al
jne 0x488d02
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 4]
cmp eax, 1
jne 0x48845c
mov eax, dword [0x6bdb6c]
movzx eax, byte [eax + 0x11]
test al, al
jne 0x48897a
mov eax, dword [0xa68508]
test eax, eax
je 0x48897a
mov dword [0xa68508], 0
mov eax, dword [0x6bdb6c]
movzx eax, byte [eax + 0x50]
movzx eax, al
mov dword [0xa6852c], eax
mov eax, dword [0x6bdb6c]
mov byte [eax + 0x50], 1
mov edx, dword [0x6ad190]
mov eax, dword [0x6bdb6c]
mov eax, dword [eax + 0x30]
shl eax, 2
add eax, edx
mov eax, dword [eax]
mov dword [0xa68530], eax
mov edx, dword [0x6ad194]
mov eax, dword [0x6bdb6c]
mov eax, dword [eax + 0x30]
shl eax, 2
add eax, edx
mov eax, dword [eax]
mov dword [0xa68534], eax
mov eax, dword [0xa68534]
test eax, eax
jne 0x48883e
mov dword [0xa68534], 1
mov eax, dword [0xa68534]
mov dword [0xa68538], eax
mov eax, dword [0x6bdb6c]
mov eax, dword [eax + 0x30]
cmp eax, 0x1f
ja 0x488873
mov eax, dword [0x6bdb6c]
movzx eax, word [eax + 0x20]
cmp ax, 0x100
je 0x488873
mov eax, dword [0x6bdb6c]
movzx eax, word [eax + 0x20]
cmp ax, 0x20
jne 0x48887d
mov dword [0xa68538], 1
mov eax, dword [0x6bdb6c]
movzx eax, word [eax + 0x3a]
cwde
lea edx, [eax - 1]
mov eax, dword [0xa68530]
imul eax, edx
mov dword [0xa6853c], eax
mov dword [0xa68540], 0
jmp 0x488954
mov eax, dword [0x6bdb6c]
movzx eax, word [eax + 0x38]
cwde
lea edx, [eax - 1]
mov eax, dword [0xa68534]
imul eax, edx
mov dword [0xa68544], eax
mov dword [0xa68548], 0
jmp 0x488926
mov edx, dword [0xa6853c]
mov eax, dword [0xa68544]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.00481d5c
mov edx, eax
mov eax, dword [0x6bdb6c]
mov eax, dword [eax + 0x24]
mov ecx, edx
xor ecx, eax
mov edx, dword [0xa6853c]
mov eax, dword [0xa68544]
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.00468bea
mov eax, dword [0xa68544]
add eax, 1
mov dword [0xa68544], eax
mov eax, dword [0xa68548]
add eax, 1
mov dword [0xa68548], eax
mov edx, dword [0xa68548]
mov eax, dword [0xa68538]
cmp edx, eax
setl al
test al, al
jne 0x4888cc
mov eax, dword [0xa6853c]
add eax, 1
mov dword [0xa6853c], eax
mov eax, dword [0xa68540]
add eax, 1
mov dword [0xa68540], eax
mov edx, dword [0xa68540]
mov eax, dword [0xa68530]
cmp edx, eax
setl al
test al, al
jne 0x4888a6
mov edx, dword [0x6bdb6c]
mov eax, dword [0xa6852c]
mov byte [edx + 0x50], al
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 7
jne 0x48899e
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call fcn.00483df2
jmp 0x486c14
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 0xa
je 0x486bfe
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 9
jne 0x4889da
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax + 4]
mov edx, eax
and edx, 7
mov eax, 8
sub eax, edx
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x30], eax
jmp 0x486c14
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 0xb
je 0x486c01
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 0xc
je 0x486c04
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 0x1c
je 0x486c07
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 0x1d
je 0x486c0a
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 0x1e
je 0x486c0d
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 0x1f
je 0x486c10
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 0xd
jne 0x488b5d
mov dword [ebp - 0x1c], 1
jmp 0x488a69
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax*4 + 0xa425a0]
mov dword [esp], eax
call fcn.00472ddd
add dword [ebp - 0x1c], 1
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp + 8]
setle al
test al, al
jne 0x488a53
cmp byte [ebp - 0x9c], 0
je 0x488aaf
mov eax, dword [ebp - 0x84]
mov dword [eax + 4], 0
mov eax, dword [0x6bdb6c]
movzx eax, byte [eax + 0x12]
test al, al
jne 0x488aaf
mov dword [esp + 4], 1
mov eax, dword [ebp - 0x84]
mov dword [esp], eax
call fcn.00483df2
mov eax, dword [ebp - 0x84]
mov dword [esp], eax
call fcn.00472ddd
mov eax, dword [ebp - 0x78]
mov dword [esp], eax
call fcn.00472ddd
mov eax, dword [ebp - 0x7c]
mov dword [esp], eax
call fcn.00472ddd
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call fcn.00472ddd
mov eax, dword [0x6bdb6c]
mov edx, dword [0xa429a4]
mov byte [eax + 0x3c], dl
mov eax, dword [0xa684d0]
mov dword [esp + 4], 1
mov dword [esp], eax
call fcn.0049ac9f
mov eax, dword [0xa684d4]
mov dword [esp + 4], 1
mov dword [esp], eax
call fcn.0049ac9f
mov eax, dword [0xa684c8]
test eax, eax
jne 0x488b4a
mov dword [0x54a2d8], 0xffffffff
jmp 0x488b3c
mov dword [esp], 1
mov eax, dword [sym.imp.KERNEL32.dll_Sleep]
call eax
sub esp, 4
mov eax, dword [0x54a2d8]
test eax, eax
setne al
test al, al
jne 0x488b2b
mov eax, dword [0xa684cc]
mov dword [esp], eax
call fcn.0049af7b
nop
jmp 0x488d03
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 8
jne 0x488c96
jmp 0x488b76
nop
jmp 0x488b76
nop
jmp 0x488b76
nop
mov eax, dword [ebp - 0x78]
mov eax, dword [eax + 4]
test eax, eax
je 0x48844f
mov eax, dword [ebp - 0x78]
mov eax, dword [eax + 4]
lea edx, [eax - 1]
mov eax, dword [ebp - 0x78]
mov dword [eax + 4], edx
call fcn.0049b0c1
mov dword [ebp - 0x20], eax
mov edx, dword [0xa684d4]
mov eax, dword [0xa684d0]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.004798cb
mov eax, dword [0xa684d4]
mov dword [esp], eax
call fcn.0049b018
mov edx, dword [0x6bdb6c]
mov eax, dword [0xa684d8]
mov word [edx + 0x38], ax
mov edx, dword [0x6bdb6c]
mov eax, dword [0xa684dc]
mov word [edx + 0x3a], ax
mov edx, dword [0x6bdb6c]
mov eax, dword [0xa684e0]
mov byte [edx + 0x51], al
mov dword [ebp - 0x1c], 0
jmp 0x488c1f
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x78]
mov edx, dword [eax]
mov eax, dword [ebp - 0x1c]
add eax, edx
movzx eax, byte [eax]
mov byte [ecx], al
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call fcn.00483df2
add dword [ebp - 0x1c], 1
mov eax, dword [ebp - 0x78]
mov eax, dword [eax + 4]
cmp eax, dword [ebp - 0x1c]
setg al
test al, al
jne 0x488bf4
mov eax, dword [ebp - 0x20]
mov dword [esp], eax
call fcn.0049b018
mov edx, dword [0xa684d4]
mov eax, dword [ebp - 0x20]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.004798cb
mov ecx, dword [0x6bdb6c]
mov edx, dword [0x6bdb44]
mov eax, dword [0xa684d4]
imul eax, eax, 0xffffff50
add eax, edx
movzx eax, word [eax + 0x38]
mov word [ecx + 0x38], ax
mov ecx, dword [0x6bdb6c]
mov edx, dword [0x6bdb44]
mov eax, dword [0xa684d4]
imul eax, eax, 0xffffff50
add eax, edx
movzx eax, word [eax + 0x3a]
mov word [ecx + 0x3a], ax
jmp 0x486c14
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax + 4]
cmp eax, 0xfe
jg 0x486c13
mov eax, dword [ebp - 0x80]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x7c]
mov dword [esp], eax
call fcn.00474195
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x7c]
mov dword [esp], eax
call fcn.004739d1
mov eax, dword [0x6bdb6c]
movzx eax, byte [eax + 0x12]
test al, al
jne 0x488ce8
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call fcn.00483df2
mov eax, dword [ebp - 0x7c]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x78]
mov dword [esp], eax
call fcn.004739d1
jmp 0x486c14
nop
jmp 0x488d03
nop
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret