Function at 0x42938b
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 [0x51f26c]
test eax, eax
jne 0x42b70e
mov eax, dword [0x4e6298]
mov dword [0xaadc48], eax
mov dword [0x4e6298], 1
call fcn.0043c879
mov dword [0xaadc4c], eax
call fcn.0043c885
mov dword [esp], eax
call fcn.0043c73f
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.0043c309
mov dword [0xaadc50], eax
mov eax, dword [0xaadc50]
cmp eax, 0xffffffff
jne 0x429407
mov dword [esp], 0x204
call fcn.00414c58
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.0043c309
mov dword [0xaadc54], eax
mov eax, dword [0xaadc54]
cmp eax, 0xffffffff
jne 0x429436
mov dword [esp], 0x205
call fcn.00414c58
mov eax, dword [0x642dec]
movzx eax, word [eax + 0x38]
cwde
mov dword [0xaadc58], eax
mov eax, dword [0x642dec]
movzx eax, word [eax + 0x3a]
cwde
mov dword [0xaadc5c], eax
mov eax, dword [0x642dec]
movzx eax, byte [eax + 0x51]
movzx eax, al
mov dword [0xaadc60], eax
mov eax, dword [0x4e6014]
mov dword [ebp - 0x74], eax
mov dword [0xaadc64], 0
mov eax, dword [0x62f6c4]
and eax, 0x40000000
test eax, eax
je 0x4294a7
mov eax, dword [0x62f6c4]
and eax, 0x200
test eax, eax
je 0x4294a7
mov dword [0x62f6c4], 0xfffffe00
mov dword [0xaadc64], 1
mov eax, dword [0x642dec]
movzx eax, byte [eax + 0x3c]
movzx eax, al
mov dword [0xa88044], eax
mov eax, dword [0x642dec]
mov byte [eax + 0x3c], 1
mov dword [ebp - 0x30], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.004163b3
mov dword [ebp - 0x78], eax
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.004163b3
mov dword [ebp - 0x7c], eax
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.004163b3
mov dword [ebp - 0x80], eax
mov dword [esp + 4], 0
mov dword [esp], 1
call fcn.004163b3
mov dword [ebp - 0x84], eax
mov dword [ebp - 0x1c], 1
jmp 0x429554
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.004163b3
mov edx, eax
mov eax, dword [ebp - 0x1c]
mov dword [eax*4 + 0xa87c40], edx
add dword [ebp - 0x1c], 1
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp + 8]
setle al
test al, al
jne 0x429530
mov dword [ebp - 0x1c], 1
jmp 0x42961d
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x40000000
test eax, eax
je 0x4295d4
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax*4 + 0x62f2a0]
movzx eax, byte [eax + 0x20]
test al, al
je 0x4295c3
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax*4 + 0x62f2a0]
mov eax, dword [eax + 4]
mov edx, eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax*4 + 0x62f2a0]
mov eax, dword [eax]
mov dword [esp + 8], edx
mov dword [esp + 4], 0x20
mov dword [esp], eax
call sub.msvcrt.dll_memset
jmp 0x4295d4
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax*4 + 0x62f2a0]
mov dword [eax + 4], 0
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x1000000
test eax, eax
jne 0x429619
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x1ff
sar eax, 3
mov edx, eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax*4 + 0x62f2a0]
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 0x42956d
jmp 0x429646
nop
jmp 0x429646
nop
jmp 0x429646
nop
jmp 0x429646
nop
jmp 0x429646
nop
jmp 0x429646
nop
jmp 0x429646
nop
jmp 0x429646
nop
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x34], 1
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov eax, dword [0xa87c44]
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 0x429784
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 0x4296e0
cmp dword [ebp - 0x20], 1
je 0x4296e0
mov eax, dword [0xaadc64]
test eax, eax
jne 0x4296e0
mov dword [ebp - 0x20], 0
add dword [ebp - 0x34], 1
mov eax, dword [ebp - 0x34]
cmp eax, dword [ebp + 8]
jle 0x4296c3
mov dword [ebp - 0x3c], 1
jmp 0x429784
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa87c40]
mov dword [eax + 4], 0
mov dword [ebp - 0x38], 1
jmp 0x42977b
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 0x42971f
cmp dword [ebp - 0x38], 0
je 0x429710
mov eax, dword [0xaadc64]
test eax, eax
jne 0x429710
mov dword [ebp - 0x20], 1
mov dword [ebp - 0x38], 0
jmp 0x42977b
cmp dword [ebp - 0x20], 1
jne 0x42971f
mov dword [ebp - 0x20], 2
jmp 0x42977b
cmp dword [ebp - 0x20], 2
je 0x42b57e
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 + 0xa87c40]
mov eax, dword [ebp - 0x84]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.00416cde
mov edx, eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa87c40]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0041651a
mov dword [ebp - 0x38], 0
add dword [ebp - 0x1c], 1
jmp 0x429675
cmp dword [ebp - 0x3c], 0
jne 0x42b581
mov dword [ebp - 0x88], 0xffffffff
mov byte [ebp - 0x3d], 1
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa87c40]
mov eax, dword [eax + 4]
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa87c40]
mov eax, dword [eax]
mov dword [ebp - 0x90], eax
mov byte [ebp - 0x3e], 0
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x40000000
test eax, eax
jne 0x429cb5
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x20000000
test eax, eax
jne 0x429cb5
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x1ff
cmp eax, 0x20
jg 0x429cb5
mov dword [ebp - 0x98], 0
mov dword [ebp - 0x94], 0
cmp dword [ebp - 0x8c], 0
jne 0x429837
mov dword [ebp - 0x88], 0x30
jmp 0x429c65
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
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 0x42986e
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 + 0xa87c40]
mov dword [esp], eax
call fcn.0042901b
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
setne al
test al, al
je 0x429a40
mov eax, dword [0xa87818]
mov edx, dword [0xa8781c]
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 0x4298cf
cmp edx, dword [ebp - 0x4c]
ja 0x4298c6
cmp eax, dword [ebp - 0x50]
jbe 0x4298cf
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
cmp dword [ebp - 0x24], 1
jne 0x429972
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 0x42992a
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 0x429913
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 0x4298f5
mov eax, dword [ebp - 0x1c]
add eax, 2
cmp eax, dword [ebp - 0x8c]
jge 0x42994c
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
cmp dword [ebp - 0x8c], 1
jne 0x42995f
mov dword [ebp - 0x88], 0x48
cmp dword [ebp - 0x8c], 2
jne 0x429972
mov dword [ebp - 0x88], 0x30
cmp dword [ebp - 0x24], 2
jne 0x429a29
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 0x4299e1
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 0x4299ca
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 0x429998
mov eax, dword [ebp - 0x1c]
add eax, 2
cmp eax, dword [ebp - 0x8c]
jge 0x429a03
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
cmp dword [ebp - 0x8c], 1
jne 0x429a16
mov dword [ebp - 0x88], 0x6f
cmp dword [ebp - 0x8c], 2
jne 0x429a29
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 0x429c65
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x10000000
test eax, eax
je 0x429a63
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0
jmp 0x429a87
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 + 0x62f6c0]
and eax, 0x10000000
test eax, eax
jne 0x429ad3
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x90]
add eax, edx
movzx eax, byte [eax]
cmp al, 0x2d
jne 0x429ad3
cmp dword [ebp - 0x8c], 1
jne 0x429acb
mov dword [ebp - 0x88], 0x30
jmp 0x429c65
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 0x429afc
mov eax, dword [ebp - 0x20]
add eax, 1
cmp eax, dword [ebp - 0x8c]
jge 0x429afc
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
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 0x429c21
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 0x429bec
cmp dword [ebp - 0x24], 9
jg 0x429bec
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 + 0x62f6c0]
and eax, 0x10000000
test eax, eax
je 0x429baa
mov eax, dword [ebp - 0x68]
mov edx, dword [ebp - 0x64]
cmp edx, dword [ebp - 0x4c]
jb 0x429bf5
cmp edx, dword [ebp - 0x4c]
ja 0x429ba1
cmp eax, dword [ebp - 0x50]
jbe 0x429bf5
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
cmp byte [ebp - 0x3e], 0
je 0x429bce
mov eax, dword [ebp - 0x68]
mov edx, dword [ebp - 0x64]
cmp edx, dword [ebp - 0x54]
jb 0x429bf5
cmp edx, dword [ebp - 0x54]
ja 0x429bc5
cmp eax, dword [ebp - 0x58]
jbe 0x429bf5
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
mov eax, dword [ebp - 0x68]
mov edx, dword [ebp - 0x64]
cmp edx, dword [ebp - 0x4c]
jb 0x429bf5
cmp edx, dword [ebp - 0x4c]
ja 0x429be3
cmp eax, dword [ebp - 0x50]
jbe 0x429bf5
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
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 0x429b29
cmp byte [ebp - 0x3e], 0
je 0x429c53
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 0x429c65
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 + 0x62f6c0]
and eax, 0x1000000
test eax, eax
jne 0x42ae63
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x1ff
sar eax, 3
mov edx, eax
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax*4 + 0x62f2a0]
mov dword [esp + 8], edx
lea eax, [ebp - 0x98]
mov dword [esp + 4], eax
mov dword [esp], ecx
call sub.msvcrt.dll_memcpy
jmp 0x42ae63
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x40000000
test eax, eax
je 0x429d1d
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f2a0]
movzx eax, byte [eax + 0x20]
test al, al
je 0x429cf8
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f2a0]
mov eax, dword [eax + 4]
cmp eax, dword [ebp - 0x8c]
jge 0x429cf8
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0xa87c40]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f2a0]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0041651a
jmp 0x42ae63
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x40000000
test eax, eax
jne 0x42a0c3
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x20000000
test eax, eax
jne 0x42a0c3
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x1ff
cmp eax, 0x40
jne 0x42a0c3
cmp dword [ebp - 0x8c], 0
jne 0x429d92
mov dword [ebp - 0x88], 0x30
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f2a0]
mov dword [eax], 0
mov dword [eax + 4], 0
jmp 0x42ae63
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa87c40]
mov dword [esp], eax
call fcn.0042901b
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
setne al
test al, al
je 0x429e44
mov eax, dword [0xa87818]
mov edx, dword [0xa8781c]
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 0x429de5
cmp edx, dword [ebp - 0x4c]
ja 0x429ddc
cmp eax, dword [ebp - 0x50]
jbe 0x429de5
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
cmp dword [ebp - 0x24], 1
jne 0x429dfe
cmp dword [ebp - 0x8c], 1
jne 0x429dfe
mov dword [ebp - 0x88], 0x48
cmp dword [ebp - 0x24], 2
jne 0x429e17
cmp dword [ebp - 0x8c], 1
jne 0x429e17
mov dword [ebp - 0x88], 0x6f
cmp dword [ebp - 0x8c], 2
jne 0x429e2a
mov dword [ebp - 0x88], 0x30
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax*4 + 0x62f2a0]
mov eax, dword [ebp - 0x70]
mov edx, dword [ebp - 0x6c]
mov dword [ecx], eax
mov dword [ecx + 4], edx
jmp 0x42ae63
mov dword [ebp - 0x20], 0
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x10000000
test eax, eax
jne 0x429ea7
mov edx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x90]
add eax, edx
movzx eax, byte [eax]
cmp al, 0x2d
jne 0x429ea7
cmp dword [ebp - 0x8c], 1
jne 0x429e9f
mov dword [ebp - 0x88], 0x30
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f2a0]
mov dword [eax], 0
mov dword [eax + 4], 0
jmp 0x42ae63
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 0x429ed0
mov eax, dword [ebp - 0x20]
add eax, 1
cmp eax, dword [ebp - 0x8c]
jge 0x429ed0
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
mov dword [ebp - 0x28], 0
mov eax, dword [ebp - 0x8c]
sub eax, 1
mov dword [ebp - 0x1c], eax
jmp 0x429f19
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 0x429f08
cmp dword [ebp - 0x24], 9
jle 0x429f11
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
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 0x429ee5
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x10000000
test eax, eax
je 0x429f5c
cmp dword [ebp - 0x28], 0x13
jle 0x42a00c
cmp dword [ebp - 0x28], 0x14
jle 0x429f52
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
mov eax, dword [str.18446744073709551615]
mov dword [ebp - 0x44], eax
jmp 0x429f8d
cmp dword [ebp - 0x28], 0x12
jle 0x42a00f
cmp dword [ebp - 0x28], 0x13
jle 0x429f75
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
cmp byte [ebp - 0x3e], 0
je 0x429f85
mov eax, dword [str.9223372036854775808]
mov dword [ebp - 0x44], eax
jmp 0x429f8d
mov eax, dword [str.9223372036854775807]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa87c40]
mov eax, dword [eax]
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x1c], 0
jmp 0x429ffd
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 0x42a012
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 0x429ff9
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
add dword [ebp - 0x1c], 1
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x28]
setl al
test al, al
jne 0x429fa8
jmp 0x42a013
nop
jmp 0x42a013
nop
jmp 0x42a013
nop
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov byte [eax], 0
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0xa87c40]
mov eax, dword [ebp - 0x84]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.00416cde
mov edx, eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa87c40]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0041651a
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x10000000
test eax, eax
je 0x42a094
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0x62f2a0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa87c40]
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 0x42ae63
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0x62f2a0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa87c40]
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 0x42ae63
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x20000000
test eax, eax
je 0x42ae63
mov dword [0xaadc68], 0
mov dword [0xaadc6c], 0
mov dword [0xaadc70], 0
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0
mov dword [0xaadc74], 0
mov dword [0xa87c20], 0
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x1ff
cmp eax, 0x20
jne 0x42a13f
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0x62f2a0]
mov eax, dword [0x502f78]
mov dword [edx], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x1ff
cmp eax, 0x40
jne 0x42a161
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f2a0]
fldz
fstp qword [eax]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x1ff
cmp eax, 0x100
jne 0x42a198
mov eax, dword [ebp - 0x34]
mov ebx, dword [eax*4 + 0x62f2a0]
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 0x42a1b0
mov dword [ebp - 0x88], 0x30
jmp 0x42ae63
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa87c40]
mov dword [esp], eax
call fcn.0042901b
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0
setne al
test al, al
je 0x42a4b5
mov eax, dword [0xa87818]
mov edx, dword [0xa8781c]
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], edx
cmp dword [ebp - 0x24], 1
jne 0x42a1fe
cmp dword [ebp - 0x8c], 1
jne 0x42a1fe
mov dword [ebp - 0x88], 0x48
cmp dword [ebp - 0x24], 2
jne 0x42a217
cmp dword [ebp - 0x8c], 1
jne 0x42a217
mov dword [ebp - 0x88], 0x6f
cmp dword [ebp - 0x8c], 2
jne 0x42a22a
mov dword [ebp - 0x88], 0x30
mov dword [0xaadc78], 0x7fffffff
mov dword [0xaadc7c], 0
mov eax, dword [0xaadc78]
mov edx, dword [0xaadc7c]
mov edx, eax
mov eax, 0
mov dword [0xaadc78], eax
mov dword [0xaadc7c], edx
mov eax, dword [0xaadc78]
mov edx, dword [0xaadc7c]
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 [0xaadc78], eax
mov dword [0xaadc7c], edx
jmp 0x42a38c
mov eax, dword [0xaadc78]
mov edx, dword [0xaadc7c]
sub dword [ebp - 0x70], eax
sbb dword [ebp - 0x6c], edx
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x1ff
cmp eax, 0x20
jne 0x42a2f4
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax*4 + 0x62f2a0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f2a0]
fld dword [eax]
mov eax, dword [0xaadc78]
mov edx, dword [0xaadc7c]
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 + 0x62f6c0]
and eax, 0x1ff
cmp eax, 0x40
jne 0x42a33f
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax*4 + 0x62f2a0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f2a0]
fld qword [eax]
mov eax, dword [0xaadc78]
mov edx, dword [0xaadc7c]
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 + 0x62f6c0]
and eax, 0x1ff
cmp eax, 0x100
jne 0x42a38c
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax*4 + 0x62f2a0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f2a0]
fld xword [eax]
mov eax, dword [0xaadc78]
mov edx, dword [0xaadc7c]
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], edx
fild qword [ebp - 0xa8]
faddp st(1)
fstp xword [ecx]
mov eax, dword [0xaadc78]
mov edx, dword [0xaadc7c]
mov ecx, 1
cmp edx, dword [ebp - 0x6c]
jb 0x42a3b0
cmp edx, dword [ebp - 0x6c]
ja 0x42a3ab
cmp eax, dword [ebp - 0x70]
jb 0x42a3b0
mov ecx, 0
test cl, cl
jne 0x42a298
mov eax, dword [ebp - 0x70]
mov edx, dword [ebp - 0x6c]
mov dword [0xaadc78], eax
mov dword [0xaadc7c], edx
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x1ff
cmp eax, 0x20
jne 0x42a414
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax*4 + 0x62f2a0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f2a0]
fld dword [eax]
mov eax, dword [0xaadc78]
mov edx, dword [0xaadc7c]
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 + 0x62f6c0]
and eax, 0x1ff
cmp eax, 0x40
jne 0x42a45f
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax*4 + 0x62f2a0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f2a0]
fld qword [eax]
mov eax, dword [0xaadc78]
mov edx, dword [0xaadc7c]
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 + 0x62f6c0]
and eax, 0x1ff
cmp eax, 0x100
jne 0x42ae5f
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax*4 + 0x62f2a0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f2a0]
fld xword [eax]
mov eax, dword [0xaadc78]
mov edx, dword [0xaadc7c]
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], edx
fild qword [ebp - 0xa8]
faddp st(1)
fstp xword [ecx]
jmp 0x42ae5f
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 0x42a4ee
cmp dword [ebp - 0x8c], 1
jne 0x42a4e6
mov dword [ebp - 0x88], 0x30
jmp 0x42ae63
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 0x42a535
mov eax, dword [ebp - 0x20]
add eax, 1
cmp eax, dword [ebp - 0x8c]
jge 0x42ae62
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 0x42a5f8
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
jmp 0x42a5df
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 0x42a56c
cmp dword [ebp - 0x24], 0x64
je 0x42a56c
cmp dword [ebp - 0x24], 0x45
je 0x42a56c
cmp dword [ebp - 0x24], 0x65
jne 0x42a588
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x20]
jne 0x42a57d
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
jmp 0x42a70e
cmp dword [ebp - 0x24], 0x2e
jne 0x42a596
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
jmp 0x42a5f9
sub dword [ebp - 0x24], 0x30
cmp dword [ebp - 0x24], 0
js 0x42a5a6
cmp dword [ebp - 0x24], 9
jle 0x42a5af
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
mov eax, dword [0xaadc68]
add eax, 1
mov dword [0xaadc68], eax
mov edx, dword [0xa87c20]
mov eax, dword [ebp - 0x24]
add eax, 0x30
mov byte [edx + 0xa87820], al
mov eax, dword [0xa87c20]
add eax, 1
mov dword [0xa87c20], eax
add dword [ebp - 0x1c], 1
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x8c]
setl al
test al, al
jne 0x42a540
jmp 0x42a8e8
nop
mov dword [ebp - 0x28], 1
mov eax, dword [ebp - 0x8c]
sub eax, 1
cmp eax, dword [ebp - 0x20]
jne 0x42a61d
mov dword [ebp - 0x88], 0x30
jmp 0x42a8e8
add dword [ebp - 0x20], 1
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x1c], eax
jmp 0x42a6f5
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 0x42a658
cmp dword [ebp - 0x24], 0x64
je 0x42a658
cmp dword [ebp - 0x24], 0x45
je 0x42a658
cmp dword [ebp - 0x24], 0x65
jne 0x42a67d
mov eax, dword [0xa87c20]
test eax, eax
je 0x42a67d
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x20]
jne 0x42a672
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x20], eax
jmp 0x42a70e
sub dword [ebp - 0x24], 0x30
cmp dword [ebp - 0x24], 0
js 0x42a68d
cmp dword [ebp - 0x24], 9
jle 0x42a696
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
cmp dword [ebp - 0x24], 0
je 0x42a6a3
mov dword [ebp - 0x28], 0
cmp dword [ebp - 0x28], 0
je 0x42a6b6
mov eax, dword [0xaadc74]
add eax, 1
mov dword [0xaadc74], eax
mov eax, dword [0xaadc6c]
add eax, 1
mov dword [0xaadc6c], eax
mov eax, dword [0xa87c20]
test eax, eax
jne 0x42a6d2
cmp dword [ebp - 0x24], 0
je 0x42a6f1
mov edx, dword [0xa87c20]
mov eax, dword [ebp - 0x24]
add eax, 0x30
mov byte [edx + 0xa87820], al
mov eax, dword [0xa87c20]
add eax, 1
mov dword [0xa87c20], eax
add dword [ebp - 0x1c], 1
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x8c]
setl al
test al, al
jne 0x42a62c
jmp 0x42a8e8
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x1ff
cmp eax, 0x20
jne 0x42a74b
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 0x42a742
cmp dword [ebp - 0x24], 0x64
jne 0x42a74b
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
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 0x42a76b
cmp dword [ebp - 0x24], 0x64
jne 0x42a779
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 0x42a796
mov dword [ebp - 0x88], 0x30
jmp 0x42a8e8
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 0x42a7df
mov eax, dword [ebp - 0x8c]
sub eax, 1
cmp eax, dword [ebp - 0x20]
jne 0x42a7d1
mov dword [ebp - 0x88], 0x30
jmp 0x42a8e8
mov dword [0xaadc70], 1
add dword [ebp - 0x20], 1
cmp dword [ebp - 0x24], 0x2b
jne 0x42a806
mov eax, dword [ebp - 0x8c]
sub eax, 1
cmp eax, dword [ebp - 0x20]
jne 0x42a802
mov dword [ebp - 0x88], 0x30
jmp 0x42a8e8
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 0x42a82f
mov eax, dword [ebp - 0x20]
add eax, 1
cmp eax, dword [ebp - 0x8c]
jge 0x42a82f
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
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 0x42a8d7
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 0x42a8ce
cmp dword [ebp - 0x24], 9
jg 0x42a8ce
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 0x42a8d7
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x20]
setge al
test al, al
jne 0x42a859
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x1ff
cmp eax, 0x20
jne 0x42ab56
mov eax, dword [0xaadc70]
test eax, eax
je 0x42a913
neg dword [ebp - 0x68]
adc dword [ebp - 0x64], 0
neg dword [ebp - 0x64]
mov eax, dword [0xaadc74]
cmp eax, 1
jne 0x42a93b
mov eax, dword [0xaadc6c]
cmp eax, 1
jne 0x42a93b
mov dword [0xaadc6c], 0
mov dword [0xaadc74], 0
mov eax, dword [0xaadc74]
cmp eax, 0x2b
jle 0x42a94e
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
mov eax, dword [0xaadc68]
test eax, eax
jne 0x42a96a
mov edx, dword [0xaadc6c]
mov eax, dword [0xaadc74]
cmp edx, eax
je 0x42aae4
mov eax, dword [0xaadc68]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jne 0x42a982
mov eax, dword [0xaadc74]
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 0x42a99c
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
cmp dword [ebp - 0x1c], 0x27
jne 0x42aa13
mov eax, dword [str.3402823]
mov dword [ebp - 0x44], eax
mov eax, dword [0xa87c20]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 7
jle 0x42a9bf
mov dword [ebp - 0x20], 7
mov dword [ebp - 0x24], 0
jmp 0x42aa03
mov eax, dword [ebp - 0x24]
add eax, 0xa87820
movzx edx, byte [eax]
mov eax, dword [ebp - 0x44]
movzx eax, byte [eax]
cmp dl, al
jbe 0x42a9e6
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
mov eax, dword [ebp - 0x24]
add eax, 0xa87820
movzx edx, byte [eax]
mov eax, dword [ebp - 0x44]
movzx eax, byte [eax]
cmp dl, al
jb 0x42aa12
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 0x42a9c8
jmp 0x42aa13
nop
mov eax, dword [0xaadc6c]
test eax, eax
je 0x42aa5f
mov eax, dword [0xaadc68]
test eax, eax
je 0x42aa40
mov edx, dword [0xaadc6c]
mov eax, dword [0xaadc68]
add eax, edx
cmp eax, 8
jle 0x42aa5f
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
mov edx, dword [0xaadc6c]
mov eax, dword [0xaadc74]
mov ecx, edx
sub ecx, eax
mov eax, ecx
cmp eax, 8
jle 0x42aa5f
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
cmp dword [ebp - 0x1c], 0xffffffd4
jge 0x42aa6e
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
cmp dword [ebp - 0x1c], 0xffffffd4
jne 0x42aae8
mov eax, dword [str.1401298]
mov dword [ebp - 0x44], eax
mov eax, dword [0xa87c20]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 7
jle 0x42aa91
mov dword [ebp - 0x20], 7
mov dword [ebp - 0x24], 0
jmp 0x42aad5
mov eax, dword [ebp - 0x24]
add eax, 0xa87820
movzx edx, byte [eax]
mov eax, dword [ebp - 0x44]
movzx eax, byte [eax]
cmp dl, al
jae 0x42aab8
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
mov eax, dword [ebp - 0x24]
add eax, 0xa87820
movzx edx, byte [eax]
mov eax, dword [ebp - 0x44]
movzx eax, byte [eax]
cmp dl, al
ja 0x42aae7
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 0x42aa9a
jmp 0x42aae8
nop
jmp 0x42aae8
nop
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov byte [eax], 0
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0xa87c40]
mov eax, dword [ebp - 0x84]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.00416cde
mov edx, eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa87c40]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0041651a
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0x62f2a0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa87c40]
mov eax, dword [eax]
mov dword [esp + 8], edx
mov dword [esp + 4], 0x4f06ef
mov dword [esp], eax
call sub.msvcrt.dll_sscanf
jmp 0x42ae63
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x1ff
cmp eax, 0x40
jne 0x42add2
mov eax, dword [0xaadc70]
test eax, eax
je 0x42ab81
neg dword [ebp - 0x68]
adc dword [ebp - 0x64], 0
neg dword [ebp - 0x64]
mov eax, dword [0xaadc74]
cmp eax, 1
jne 0x42aba9
mov eax, dword [0xaadc6c]
cmp eax, 1
jne 0x42aba9
mov dword [0xaadc6c], 0
mov dword [0xaadc74], 0
mov eax, dword [0xaadc74]
cmp eax, 0x142
jle 0x42abbe
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
mov eax, dword [0xaadc68]
test eax, eax
jne 0x42abda
mov edx, dword [0xaadc6c]
mov eax, dword [0xaadc74]
cmp edx, eax
je 0x42ad60
mov eax, dword [0xaadc68]
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jne 0x42abf2
mov eax, dword [0xaadc74]
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 0x42ac0f
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
cmp dword [ebp - 0x1c], 0x135
jne 0x42ac89
mov eax, dword [str.17976931]
mov dword [ebp - 0x44], eax
mov eax, dword [0xa87c20]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 8
jle 0x42ac35
mov dword [ebp - 0x20], 8
mov dword [ebp - 0x24], 0
jmp 0x42ac79
mov eax, dword [ebp - 0x24]
add eax, 0xa87820
movzx edx, byte [eax]
mov eax, dword [ebp - 0x44]
movzx eax, byte [eax]
cmp dl, al
jbe 0x42ac5c
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
mov eax, dword [ebp - 0x24]
add eax, 0xa87820
movzx edx, byte [eax]
mov eax, dword [ebp - 0x44]
movzx eax, byte [eax]
cmp dl, al
jb 0x42ac88
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 0x42ac3e
jmp 0x42ac89
nop
mov eax, dword [0xaadc6c]
test eax, eax
je 0x42acd5
mov eax, dword [0xaadc68]
test eax, eax
je 0x42acb6
mov edx, dword [0xaadc6c]
mov eax, dword [0xaadc68]
add eax, edx
cmp eax, 0x10
jle 0x42acd5
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
mov edx, dword [0xaadc6c]
mov eax, dword [0xaadc74]
mov ecx, edx
sub ecx, eax
mov eax, ecx
cmp eax, 0x10
jle 0x42acd5
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
cmp dword [ebp - 0x1c], 0xfffffebd
jge 0x42ace7
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
cmp dword [ebp - 0x1c], 0xfffffebd
jne 0x42ad64
mov eax, dword [str.4940656]
mov dword [ebp - 0x44], eax
mov eax, dword [0xa87c20]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 7
jle 0x42ad0d
mov dword [ebp - 0x20], 7
mov dword [ebp - 0x24], 0
jmp 0x42ad51
mov eax, dword [ebp - 0x24]
add eax, 0xa87820
movzx edx, byte [eax]
mov eax, dword [ebp - 0x44]
movzx eax, byte [eax]
cmp dl, al
jae 0x42ad34
mov byte [ebp - 0x3d], 0
jmp 0x42ae63
mov eax, dword [ebp - 0x24]
add eax, 0xa87820
movzx edx, byte [eax]
mov eax, dword [ebp - 0x44]
movzx eax, byte [eax]
cmp dl, al
ja 0x42ad63
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 0x42ad16
jmp 0x42ad64
nop
jmp 0x42ad64
nop
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov byte [eax], 0
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0xa87c40]
mov eax, dword [ebp - 0x84]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.00416cde
mov edx, eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa87c40]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0041651a
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0x62f2a0]
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa87c40]
mov eax, dword [eax]
mov dword [esp + 8], edx
mov dword [esp + 4], 0x4f06f2
mov dword [esp], eax
call sub.msvcrt.dll_sscanf
jmp 0x42ae63
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f6c0]
and eax, 0x1ff
cmp eax, 0x100
jne 0x42ae63
mov eax, dword [ebp - 0x84]
mov eax, dword [eax]
mov byte [eax], 0
mov eax, dword [ebp - 0x34]
mov edx, dword [eax*4 + 0xa87c40]
mov eax, dword [ebp - 0x84]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.00416cde
mov edx, eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa87c40]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0041651a
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0xa87c40]
mov eax, dword [eax]
mov dword [esp + 8], 0xaadc80
mov dword [esp + 4], 0x4f06f2
mov dword [esp], eax
call sub.msvcrt.dll_sscanf
mov eax, dword [ebp - 0x34]
mov eax, dword [eax*4 + 0x62f2a0]
fld qword [0xaadc80]
fstp xword [eax]
jmp 0x42ae63
nop
jmp 0x42ae63
nop
cmp byte [ebp - 0x3d], 0
je 0x42b584
mov eax, dword [ebp - 0x78]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x7c]
mov dword [esp], eax
call fcn.0041651a
jmp 0x42ae82
nop
mov dword [0xaadc88], 0
jmp 0x42ae8f
nop
mov eax, dword [0x642dec]
movzx eax, byte [eax + 0x11]
test al, al
jne 0x42b0c4
mov dword [ebp - 0x1c], 1
mov eax, dword [0x642dec]
mov eax, dword [eax + 0x30]
cmp eax, 0x1f
ja 0x42aed2
mov eax, dword [0x642dec]
movzx eax, word [eax + 0x20]
cmp ax, 0x100
je 0x42aed2
mov eax, dword [0x642dec]
movzx eax, word [eax + 0x20]
cmp ax, 0x20
jne 0x42af0c
call fcn.0040aeea
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 0x42af0c
mov dword [ebp - 0x1c], 0
mov eax, dword [0xaadc88]
cmp dword [ebp - 0x1c], eax
je 0x42b0c4
mov eax, dword [0xaadc88]
xor eax, 1
mov dword [0xaadc88], eax
mov eax, dword [0x642dec]
movzx eax, byte [eax + 0x50]
movzx eax, al
mov dword [0xaadc8c], eax
mov eax, dword [0x642dec]
mov byte [eax + 0x50], 1
mov edx, dword [0x632410]
mov eax, dword [0x642dec]
mov eax, dword [eax + 0x30]
shl eax, 2
add eax, edx
mov eax, dword [eax]
mov dword [0xaadc90], eax
mov edx, dword [0x632414]
mov eax, dword [0x642dec]
mov eax, dword [eax + 0x30]
shl eax, 2
add eax, edx
mov eax, dword [eax]
mov dword [0xaadc94], eax
mov eax, dword [0xaadc94]
test eax, eax
jne 0x42af88
mov dword [0xaadc94], 1
mov eax, dword [0xaadc94]
mov dword [0xaadc98], eax
mov eax, dword [0x642dec]
mov eax, dword [eax + 0x30]
cmp eax, 0x1f
ja 0x42afbd
mov eax, dword [0x642dec]
movzx eax, word [eax + 0x20]
cmp ax, 0x100
je 0x42afbd
mov eax, dword [0x642dec]
movzx eax, word [eax + 0x20]
cmp ax, 0x20
jne 0x42afc7
mov dword [0xaadc98], 1
mov eax, dword [0x642dec]
movzx eax, word [eax + 0x3a]
cwde
lea edx, [eax - 1]
mov eax, dword [0xaadc90]
imul eax, edx
mov dword [0xaadc9c], eax
mov dword [0xaadca0], 0
jmp 0x42b09e
mov eax, dword [0x642dec]
movzx eax, word [eax + 0x38]
cwde
lea edx, [eax - 1]
mov eax, dword [0xaadc94]
imul eax, edx
mov dword [0xaadca4], eax
mov dword [0xaadca8], 0
jmp 0x42b070
mov edx, dword [0xaadc9c]
mov eax, dword [0xaadca4]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.00424752
mov edx, eax
mov eax, dword [0x642dec]
mov eax, dword [eax + 0x24]
mov ecx, edx
xor ecx, eax
mov edx, dword [0xaadc9c]
mov eax, dword [0xaadca4]
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0040bdb4
mov eax, dword [0xaadca4]
add eax, 1
mov dword [0xaadca4], eax
mov eax, dword [0xaadca8]
add eax, 1
mov dword [0xaadca8], eax
mov edx, dword [0xaadca8]
mov eax, dword [0xaadc98]
cmp edx, eax
setl al
test al, al
jne 0x42b016
mov eax, dword [0xaadc9c]
add eax, 1
mov dword [0xaadc9c], eax
mov eax, dword [0xaadca0]
add eax, 1
mov dword [0xaadca0], eax
mov edx, dword [0xaadca0]
mov eax, dword [0xaadc90]
cmp edx, eax
setl al
test al, al
jne 0x42aff0
mov edx, dword [0x642dec]
mov eax, dword [0xaadc8c]
mov byte [edx + 0x50], al
cmp dword [ebp - 0x30], 0
je 0x42b0f3
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.0041651a
jmp 0x42b1a6
mov eax, dword [0x642dec]
movzx eax, byte [eax + 0x12]
test al, al
je 0x42b173
mov dword [esp], 0x4f06f6
call fcn.0041619f
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call fcn.0041651a
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 0x42b165
cmp dword [ebp - 0x2c], 0xa
jne 0x42b13e
mov dword [ebp - 0x2c], 0xd
mov dword [esp], 0x4f06f7
call fcn.0041619f
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call fcn.0041651a
mov eax, dword [ebp - 0x80]
mov edx, dword [eax]
mov eax, dword [ebp - 0x2c]
mov byte [edx], al
jmp 0x42b193
mov dword [esp], 0xa
call fcn.004862fc
jmp 0x42b193
mov dword [esp], 0xa
call fcn.004862fc
call fcn.0041851b
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call fcn.0041651a
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x74]
mov dword [esp], eax
call fcn.0042725b
movzx eax, byte [0x51f279]
test al, al
jne 0x42b711
mov eax, dword [ebp - 0x80]
mov eax, dword [eax + 4]
cmp eax, 1
jne 0x42ae8e
mov eax, dword [0x642dec]
movzx eax, byte [eax + 0x11]
test al, al
jne 0x42b389
mov eax, dword [0xaadc88]
test eax, eax
je 0x42b389
mov dword [0xaadc88], 0
mov eax, dword [0x642dec]
movzx eax, byte [eax + 0x50]
movzx eax, al
mov dword [0xaadcac], eax
mov eax, dword [0x642dec]
mov byte [eax + 0x50], 1
mov edx, dword [0x632410]
mov eax, dword [0x642dec]
mov eax, dword [eax + 0x30]
shl eax, 2
add eax, edx
mov eax, dword [eax]
mov dword [0xaadcb0], eax
mov edx, dword [0x632414]
mov eax, dword [0x642dec]
mov eax, dword [eax + 0x30]
shl eax, 2
add eax, edx
mov eax, dword [eax]
mov dword [0xaadcb4], eax
mov eax, dword [0xaadcb4]
test eax, eax
jne 0x42b24d
mov dword [0xaadcb4], 1
mov eax, dword [0xaadcb4]
mov dword [0xaadcb8], eax
mov eax, dword [0x642dec]
mov eax, dword [eax + 0x30]
cmp eax, 0x1f
ja 0x42b282
mov eax, dword [0x642dec]
movzx eax, word [eax + 0x20]
cmp ax, 0x100
je 0x42b282
mov eax, dword [0x642dec]
movzx eax, word [eax + 0x20]
cmp ax, 0x20
jne 0x42b28c
mov dword [0xaadcb8], 1
mov eax, dword [0x642dec]
movzx eax, word [eax + 0x3a]
cwde
lea edx, [eax - 1]
mov eax, dword [0xaadcb0]
imul eax, edx
mov dword [0xaadcbc], eax
mov dword [0xaadcc0], 0
jmp 0x42b363
mov eax, dword [0x642dec]
movzx eax, word [eax + 0x38]
cwde
lea edx, [eax - 1]
mov eax, dword [0xaadcb4]
imul eax, edx
mov dword [0xaadcc4], eax
mov dword [0xaadcc8], 0
jmp 0x42b335
mov edx, dword [0xaadcbc]
mov eax, dword [0xaadcc4]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.00424752
mov edx, eax
mov eax, dword [0x642dec]
mov eax, dword [eax + 0x24]
mov ecx, edx
xor ecx, eax
mov edx, dword [0xaadcbc]
mov eax, dword [0xaadcc4]
mov dword [esp + 8], ecx
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0040bdb4
mov eax, dword [0xaadcc4]
add eax, 1
mov dword [0xaadcc4], eax
mov eax, dword [0xaadcc8]
add eax, 1
mov dword [0xaadcc8], eax
mov edx, dword [0xaadcc8]
mov eax, dword [0xaadcb8]
cmp edx, eax
setl al
test al, al
jne 0x42b2db
mov eax, dword [0xaadcbc]
add eax, 1
mov dword [0xaadcbc], eax
mov eax, dword [0xaadcc0]
add eax, 1
mov dword [0xaadcc0], eax
mov edx, dword [0xaadcc0]
mov eax, dword [0xaadcb0]
cmp edx, eax
setl al
test al, al
jne 0x42b2b5
mov edx, dword [0x642dec]
mov eax, dword [0xaadcac]
mov byte [edx + 0x50], al
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 7
jne 0x42b3ad
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call fcn.004267dc
jmp 0x429646
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 0xa
je 0x429630
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 9
jne 0x42b3e9
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 0x429646
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 0xb
je 0x429633
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 0xc
je 0x429636
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 0x1c
je 0x429639
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 0x1d
je 0x42963c
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 0x1e
je 0x42963f
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 0x1f
je 0x429642
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 0xd
jne 0x42b56c
mov dword [ebp - 0x1c], 1
jmp 0x42b478
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax*4 + 0xa87c40]
mov dword [esp], eax
call fcn.00415926
add dword [ebp - 0x1c], 1
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp + 8]
setle al
test al, al
jne 0x42b462
cmp byte [ebp - 0x9c], 0
je 0x42b4be
mov eax, dword [ebp - 0x84]
mov dword [eax + 4], 0
mov eax, dword [0x642dec]
movzx eax, byte [eax + 0x12]
test al, al
jne 0x42b4be
mov dword [esp + 4], 1
mov eax, dword [ebp - 0x84]
mov dword [esp], eax
call fcn.004267dc
mov eax, dword [ebp - 0x84]
mov dword [esp], eax
call fcn.00415926
mov eax, dword [ebp - 0x78]
mov dword [esp], eax
call fcn.00415926
mov eax, dword [ebp - 0x7c]
mov dword [esp], eax
call fcn.00415926
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call fcn.00415926
mov eax, dword [0x642dec]
mov edx, dword [0xa88044]
mov byte [eax + 0x3c], dl
mov eax, dword [0xaadc50]
mov dword [esp + 4], 1
mov dword [esp], eax
call fcn.0043c55b
mov eax, dword [0xaadc54]
mov dword [esp + 4], 1
mov dword [esp], eax
call fcn.0043c55b
mov eax, dword [0xaadc48]
test eax, eax
jne 0x42b559
mov dword [0x4e6298], 0xffffffff
jmp 0x42b54b
mov dword [esp], 1
mov eax, dword [sym.imp.KERNEL32.dll_Sleep]
call eax
sub esp, 4
mov eax, dword [0x4e6298]
test eax, eax
setne al
test al, al
jne 0x42b53a
mov eax, dword [0xaadc4c]
mov dword [esp], eax
call fcn.0043c73f
nop
jmp 0x42b712
mov eax, dword [ebp - 0x80]
mov eax, dword [eax]
movzx eax, byte [eax]
cmp al, 8
jne 0x42b6a5
jmp 0x42b585
nop
jmp 0x42b585
nop
jmp 0x42b585
nop
mov eax, dword [ebp - 0x78]
mov eax, dword [eax + 4]
test eax, eax
je 0x42ae81
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.0043c885
mov dword [ebp - 0x20], eax
mov edx, dword [0xaadc54]
mov eax, dword [0xaadc50]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.0041c2c1
mov eax, dword [0xaadc54]
mov dword [esp], eax
call fcn.0043c7dc
mov edx, dword [0x642dec]
mov eax, dword [0xaadc58]
mov word [edx + 0x38], ax
mov edx, dword [0x642dec]
mov eax, dword [0xaadc5c]
mov word [edx + 0x3a], ax
mov edx, dword [0x642dec]
mov eax, dword [0xaadc60]
mov byte [edx + 0x51], al
mov dword [ebp - 0x1c], 0
jmp 0x42b62e
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.004267dc
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 0x42b603
mov eax, dword [ebp - 0x20]
mov dword [esp], eax
call fcn.0043c7dc
mov edx, dword [0xaadc54]
mov eax, dword [ebp - 0x20]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.0041c2c1
mov ecx, dword [0x642dec]
mov edx, dword [0x642dc4]
mov eax, dword [0xaadc54]
imul eax, eax, 0xffffff50
add eax, edx
movzx eax, word [eax + 0x38]
mov word [ecx + 0x38], ax
mov ecx, dword [0x642dec]
mov edx, dword [0x642dc4]
mov eax, dword [0xaadc54]
imul eax, eax, 0xffffff50
add eax, edx
movzx eax, word [eax + 0x3a]
mov word [ecx + 0x3a], ax
jmp 0x429646
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax + 4]
cmp eax, 0xfe
jg 0x429645
mov eax, dword [ebp - 0x80]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x7c]
mov dword [esp], eax
call fcn.00416cde
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x7c]
mov dword [esp], eax
call fcn.0041651a
mov eax, dword [0x642dec]
movzx eax, byte [eax + 0x12]
test al, al
jne 0x42b6f7
mov dword [esp + 4], 0
mov eax, dword [ebp - 0x80]
mov dword [esp], eax
call fcn.004267dc
mov eax, dword [ebp - 0x7c]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x78]
mov dword [esp], eax
call fcn.0041651a
jmp 0x429646
nop
jmp 0x42b712
nop
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret