Function at 0x403f34
Capabilities:
Set file attributes
Terminate process
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xfac
push ebx
push esi
push edi
push 7
pop ecx
xor ebx, ebx
push 0x44f7d8
push dword [ebp + 8]
xor eax, eax
mov word [ebp - 0x3c], bx
lea edi, [ebp - 0x3a]
mov byte [ebp - 6], bl
mov byte [ebp - 5], bl
mov byte [ebp - 0xd], bl
rep stosd dword es:[edi], eax
call fcn.00403e67
cmp dword [0x44f7d8], ebx
pop ecx
pop ecx
je 0x40539d
mov edi, dword [0x42a054]
mov esi, dword [0x42a1d4]
push 0x100
lea eax, [ebp - 0xca8]
push ebx
push eax
call fcn.00421c60
push 0x100
lea eax, [ebp - 0x164]
push ebx
push eax
call fcn.00421c60
lea eax, [ebp - 0xba8]
push eax
lea eax, [ebp - 0x3c]
push eax
mov eax, dword [0x44f7d8]
push dword [eax]
call fcn.00403d13
add esp, 0x24
xor ecx, ecx
cmp eax, ebx
mov dword [ebp - 4], eax
jle 0x403ff1
lea eax, [ebp - 0xba6]
cmp byte [eax - 2], 0x2d
jne 0x403fe6
cmp byte [eax], bl
jne 0x403fe6
movzx edx, byte [eax - 1]
dec dword [ebp - 4]
mov byte [ebp + edx - 0xca8], 1
inc ecx
add eax, 0x100
cmp ecx, dword [ebp - 4]
jl 0x403fcd
lea eax, [ebp - 0x3c]
push eax
push 0xf
lea eax, [ebp - 0x164]
push eax
push 0x42eb30
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x404062
cmp dword [ebp - 4], 2
jl 0x404062
push 0x80
lea eax, [ebp - 0xaa8]
push eax
call dword [0x42a10c]
push ebx
push ebx
push ebx
lea eax, [ebp - 0xaa8]
push eax
lea eax, [ebp - 0xba8]
push eax
call fcn.0040ed45
add esp, 0x14
test al, al
je 0x404062
cmp byte [ebp - 0xc36], bl
je 0x404062
push 1
push ebx
push ebx
lea eax, [ebp - 0xaa8]
push eax
push ebx
push ebx
call dword [0x458c8c]
lea eax, [ebp - 0x3c]
push eax
push 0xf
lea eax, [ebp - 0x164]
push eax
push 0x42eb40
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x4041ec
cmp dword [ebp - 4], 3
jl 0x4041ec
lea eax, [ebp - 0x9a8]
push eax
call dword [0x42a214]
cmp eax, 0x40
jne 0x4041ec
push 0x500000
lea eax, [ebp - 4]
push eax
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0xba8]
push ebx
push eax
mov dword [ebp - 0x14], ebx
mov dword [ebp - 4], ebx
call fcn.0040ed45
add esp, 0x14
test al, al
je 0x405368
push 0x10
pop ecx
xor eax, eax
push 0x3f
mov byte [ebp - 0x1a8], bl
lea edi, [ebp - 0x1a7]
rep stosd dword es:[edi], eax
pop ecx
mov byte [ebp - 0xfac], bl
lea edi, [ebp - 0xfab]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
lea eax, [ebp - 0x9a8]
push eax
lea eax, [ebp - 0xfac]
push eax
call dword [0x42a1ec]
lea eax, [ebp - 0xfac]
push eax
push dword [ebp - 4]
push dword [ebp - 0x14]
call fcn.0041a679
lea eax, [ebp - 0x1a8]
push eax
push dword [ebp - 4]
push dword [ebp - 0x14]
call fcn.0041a7a8
push 0x40
lea eax, [ebp - 0x9a8]
push eax
lea eax, [ebp - 0x1a8]
push eax
call fcn.004224e1
add esp, 0x24
test eax, eax
jne 0x4041de
mov edi, 0x80
push edi
lea eax, [ebp - 0xaa8]
push eax
mov dword [ebp - 0x1c], ebx
call dword [0x42a10c]
push ebx
push edi
push 2
push ebx
push 2
push 0x40000000
lea eax, [ebp - 0xaa8]
push eax
call dword [0x42a1d8]
mov edi, eax
cmp edi, 0xffffffff
je 0x4041de
push ebx
lea eax, [ebp - 0x1c]
push eax
push dword [ebp - 4]
push dword [ebp - 0x14]
push edi
call esi
push edi
call dword [0x42a1e0]
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 4]
jne 0x4041d1
cmp byte [ebp - 0xc36], bl
je 0x4041de
xor eax, eax
cmp byte [ebp - 0xc40], bl
sete al
push eax
push ebx
lea eax, [ebp - 0x8a8]
push eax
lea eax, [ebp - 0xaa8]
push eax
push ebx
push ebx
call dword [0x458c8c]
jmp 0x4041de
lea eax, [ebp - 0xaa8]
push eax
call fcn.00414ef4
pop ecx
push dword [ebp - 0x14]
call fcn.00410c3b
pop ecx
jmp 0x405368
lea eax, [ebp - 0x3c]
push eax
push 0xf
lea eax, [ebp - 0x164]
push eax
push 0x42eb20
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x404217
cmp dword [ebp - 4], 2
jge 0x405368
lea eax, [ebp - 0x3c]
push eax
push 0xf
lea eax, [ebp - 0x164]
push eax
push 0x42eb50
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
je 0x4053a2
lea eax, [ebp - 0x3c]
push eax
push 0xf
lea eax, [ebp - 0x164]
push eax
push 0x42eb60
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x404289
cmp dword [ebp - 4], 1
jl 0x404289
cmp byte [ebp - 0xc40], bl
sete al
push eax
push ebx
lea eax, [ebp - 0xaa8]
push eax
lea eax, [ebp - 0xba8]
push eax
push ebx
push ebx
call dword [0x458c8c]
jmp 0x405368
lea eax, [ebp - 0x3c]
push eax
push 0xf
lea eax, [ebp - 0x164]
push eax
push 0x42eb70
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x4042c9
cmp dword [ebp - 4], 1
jl 0x4042c9
lea eax, [ebp - 0xba8]
push eax
call fcn.004138e2
pop ecx
push eax
call dword [0x42a1e4]
jmp 0x405368
lea eax, [ebp - 0x3c]
push eax
push 0xf
lea eax, [ebp - 0x164]
push eax
push 0x42eb80
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x404301
cmp dword [ebp - 4], 1
jl 0x404301
lea eax, [ebp - 0xba8]
push eax
call fcn.0041394a
jmp 0x4041e6
lea eax, [ebp - 0x3c]
push eax
push 0xf
lea eax, [ebp - 0x164]
push eax
push 0x42ebd0
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x40432c
call fcn.00413dd8
jmp 0x405368
lea eax, [ebp - 0x3c]
push eax
push 0xf
lea eax, [ebp - 0x164]
push eax
push 0x42eb90
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x404383
cmp dword [ebp - 4], 3
jl 0x404383
lea eax, [ebp - 0x9a8]
push eax
call fcn.0042203e
pop ecx
push eax
lea eax, [ebp - 0xaa8]
push eax
call fcn.004138e2
pop ecx
push eax
lea eax, [ebp - 0xba8]
push eax
call fcn.00408f75
add esp, 0xc
jmp 0x405368
lea eax, [ebp - 0x3c]
push eax
push 0xf
lea eax, [ebp - 0x164]
push eax
push 0x42ebb0
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x4043b5
mov byte [0x457aa0], bl
mov byte [0x459671], bl
jmp 0x405368
lea eax, [ebp - 0x3c]
push eax
push 0xf
lea eax, [ebp - 0x164]
push eax
push 0x42eba0
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x40449c
cmp dword [ebp - 4], 3
jl 0x40449c
cmp dword [ebp - 4], 5
jl 0x4043fc
lea eax, [ebp - 0x7a8]
push eax
call fcn.0042203e
pop ecx
mov dword [ebp - 0x1c], eax
jmp 0x404403
mov dword [ebp - 0x1c], 2
cmp dword [ebp - 4], 4
jl 0x40441a
lea eax, [ebp - 0x8a8]
push eax
call fcn.0042203e
pop ecx
mov edi, eax
jmp 0x40441c
xor edi, edi
lea eax, [ebp - 0x9a8]
push eax
call fcn.0042203e
cmp eax, 1
pop ecx
jge 0x404433
xor eax, eax
inc eax
jmp 0x404440
lea eax, [ebp - 0x9a8]
push eax
call fcn.0042203e
pop ecx
cmp dword [ebp - 4], 6
lea esi, [ebp - 0x6a8]
jge 0x404451
mov esi, 0x42a4e4
cmp byte [ebp - 0xc40], bl
push dword [ebp - 0x1c]
sete cl
cmp byte [ebp - 0xc47], bl
push edi
push ecx
push dword [ebp - 0xc36]
sete cl
push ecx
push eax
lea eax, [ebp - 0xaa8]
push eax
call fcn.004138e2
pop ecx
xor edx, edx
mov ecx, 0x3e8
div ecx
push eax
lea eax, [ebp - 0xba8]
push esi
push eax
call fcn.0040e8ac
add esp, 0x24
jmp 0x405368
lea eax, [ebp - 0x3c]
push eax
push 0xf
lea eax, [ebp - 0x164]
push eax
push 0x42ebe0
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x4046ff
cmp dword [ebp - 4], 1
jl 0x4046ff
push 0x458ee8
lea eax, [ebp - 0xdac]
push eax
call dword [0x42a1ec]
push 0x12
lea eax, [ebp - 0x164]
push eax
push 0x42fd58
call fcn.00413410
add esp, 0xc
push eax
lea eax, [ebp - 0xdac]
push eax
call dword [0x42a1f0]
lea eax, [ebp - 0xba8]
push eax
push 0x42a4e0
call edi
test eax, eax
jne 0x4045ad
cmp dword [ebp - 4], 2
jl 0x4045ad
mov dword [ebp - 0x14], ebx
push ebx
push 0x80
push 4
push ebx
push 2
push 0x40000000
lea eax, [ebp - 0xdac]
push eax
call dword [0x42a1d8]
cmp eax, 0xffffffff
mov dword [ebp - 0xc], eax
jne 0x40455f
push 0x12c
call dword [0x42a1e4]
inc dword [ebp - 0x14]
cmp dword [ebp - 0x14], 0xa
jl 0x404524
jmp 0x4045ad
push 2
push ebx
push ebx
push dword [ebp - 0xc]
call dword [0x42a1d0]
push ebx
lea eax, [ebp - 0x18]
push eax
push 2
push 0x42a4dc
push dword [ebp - 0xc]
call esi
push ebx
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0xaa8]
push eax
call dword [0x42a214]
push eax
lea eax, [ebp - 0xaa8]
push eax
push dword [ebp - 0xc]
call esi
push ebx
lea eax, [ebp - 0x18]
push eax
push 2
push 0x42a4dc
push dword [ebp - 0xc]
call esi
lea eax, [ebp - 0xba8]
push eax
push 0x42a4d8
call edi
test eax, eax
jne 0x4046a7
cmp dword [ebp - 4], 2
jl 0x4046a7
xor edi, edi
push ebx
push 0x80
push 4
push ebx
push 2
push 0x40000000
lea eax, [ebp - 0xdac]
push eax
call dword [0x42a1d8]
cmp eax, 0xffffffff
mov dword [ebp - 0xc], eax
jne 0x40460a
push 0x12c
call dword [0x42a1e4]
inc edi
cmp edi, 0xa
jl 0x4045cf
jmp 0x4046f1
push 7
pop ecx
mov byte [ebp - 0x64], bl
xor eax, eax
lea edi, [ebp - 0x63]
rep stosd dword es:[edi], eax
push 2
push ebx
stosw word es:[edi], ax
push ebx
push dword [ebp - 0xc]
stosb byte es:[edi], al
call dword [0x42a1d0]
push ebx
lea eax, [ebp - 0x18]
push eax
push 2
push 0x42a4dc
push dword [ebp - 0xc]
call esi
lea eax, [ebp - 0x64]
push eax
call fcn.00421d82
imul eax, eax, 0x12d687
push eax
call fcn.0041453e
pop ecx
pop ecx
push 0x42a440
lea eax, [ebp - 0x64]
push eax
call dword [0x42a1f0]
mov edi, dword [0x42a214]
push ebx
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x64]
push eax
call edi
push eax
lea eax, [ebp - 0x64]
push eax
push dword [ebp - 0xc]
call esi
push ebx
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0xaa8]
push eax
call edi
push eax
lea eax, [ebp - 0xaa8]
push eax
push dword [ebp - 0xc]
call esi
push ebx
lea eax, [ebp - 0x18]
push eax
push 2
push 0x42a4dc
push dword [ebp - 0xc]
call esi
jmp 0x4046f1
lea eax, [ebp - 0xba8]
push eax
push 0x42a4d4
call edi
test eax, eax
jne 0x4046f1
xor esi, esi
push ebx
push 0x80
push 2
push ebx
push 2
push 0x40000000
lea eax, [ebp - 0xdac]
push eax
call dword [0x42a1d8]
cmp eax, 0xffffffff
mov dword [ebp - 0xc], eax
jne 0x4046f1
push 0x12c
call dword [0x42a1e4]
inc esi
cmp esi, 0xa
jl 0x4046bb
push dword [ebp - 0xc]
call dword [0x42a1e0]
jmp 0x405368
lea eax, [ebp - 0x3c]
push eax
push 0xf
pop esi
push esi
lea eax, [ebp - 0x164]
push eax
push 0x42ebf0
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x40474d
cmp dword [ebp - 4], 2
jl 0x40474d
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
push eax
lea eax, [ebp - 0xba8]
push eax
call fcn.00405820
add esp, 0xc
mov byte [ebp - 6], 1
jmp 0x405368
lea eax, [ebp - 0x3c]
push eax
push esi
lea eax, [ebp - 0x164]
push eax
push 0x42ec00
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x404789
cmp dword [ebp - 4], 1
jl 0x404789
push dword [ebp - 0xc47]
lea eax, [ebp - 0xba8]
push eax
call fcn.0040589d
pop ecx
pop ecx
jmp 0x404744
lea eax, [ebp - 0x3c]
push eax
push esi
lea eax, [ebp - 0x164]
push eax
push 0x42ec10
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x4047b6
cmp dword [ebp - 4], 1
jl 0x4047b6
call fcn.00405aea
jmp 0x404744
lea eax, [ebp - 0x3c]
push eax
push esi
lea eax, [ebp - 0x164]
push eax
push 0x42ec30
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x404852
cmp dword [ebp - 4], 1
jl 0x404852
lea eax, [ebp - 0xba8]
push eax
call fcn.00402517
cmp eax, ebx
pop ecx
je 0x4047f3
mov byte [eax + 0x42], 1
mov byte [eax], bl
lea eax, [ebp - 0xba8]
push eax
call fcn.004033c6
cmp eax, ebx
pop ecx
je 0x404811
mov byte [eax + 0x4c], 1
mov byte [eax + 0x4e], bl
mov byte [eax + 0x4d], 1
jmp 0x404849
mov edi, 0x44f7b8
push edi
call dword [0x42a1fc]
call fcn.00403434
mov esi, eax
cmp esi, ebx
je 0x404842
lea eax, [ebp - 0xba8]
push eax
push esi
call fcn.004220a0
pop ecx
pop ecx
mov byte [esi + 0x4c], 1
mov byte [esi + 0x4e], bl
mov byte [esi + 0x4d], 1
push edi
call dword [0x42a200]
mov byte [ebp - 0xd], 1
jmp 0x405368
lea eax, [ebp - 0x3c]
push eax
push esi
lea eax, [ebp - 0x164]
push eax
push 0x42ec40
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x4048c2
mov esi, dword [0x44f7d0]
jmp 0x4048b9
cmp byte [esi + 0x4c], bl
je 0x4048b6
cmp esi, dword [0x44f7d4]
je 0x4048b6
push esi
call fcn.00402517
cmp eax, ebx
pop ecx
je 0x404898
mov byte [eax + 0x42], 1
mov byte [eax], bl
push 0x41
push ebx
push esi
mov byte [esi + 0x4e], bl
call fcn.00421c60
add esp, 0xc
mov byte [esi + 0x4d], bl
mov dword [esi + 0x44], ebx
mov dword [esi + 0x48], ebx
mov dword [esi + 0x50], ebx
mov byte [esi + 0x4c], bl
mov esi, dword [esi + 0x58]
cmp esi, ebx
jne 0x40487a
jmp 0x405368
lea eax, [ebp - 0x3c]
push eax
push esi
lea eax, [ebp - 0x164]
push eax
push 0x42ec50
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x40490e
cmp dword [ebp - 4], 2
jl 0x40490e
lea eax, [ebp - 0xaa8]
push 2
push eax
call fcn.0042203e
test eax, eax
setne al
pop ecx
push eax
lea eax, [ebp - 0xba8]
push eax
call fcn.00406718
jmp 0x40437b
lea eax, [ebp - 0x3c]
push eax
push esi
lea eax, [ebp - 0x164]
push eax
push 0x42ec60
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x40493a
mov byte [0x454670], 1
jmp 0x405368
lea eax, [ebp - 0x3c]
push eax
push esi
lea eax, [ebp - 0x164]
push eax
push 0x42ec70
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x404966
mov byte [0x454671], 1
jmp 0x405368
lea eax, [ebp - 0x3c]
push eax
push esi
lea eax, [ebp - 0x164]
push eax
push 0x42ec80
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x404992
mov byte [0x454672], 1
jmp 0x405368
lea eax, [ebp - 0x3c]
push eax
push esi
lea eax, [ebp - 0x164]
push eax
push 0x42ec90
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x4049be
mov byte [0x454673], 1
jmp 0x405368
lea eax, [ebp - 0x3c]
push eax
push esi
lea eax, [ebp - 0x164]
push eax
push 0x42eca0
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x404a4d
cmp dword [ebp - 4], 2
jl 0x404a4d
mov cl, byte [ebp - 0xba8]
lea eax, [ebp - 0xba8]
jmp 0x4049ff
cmp cl, 0x30
jb 0x404a11
cmp cl, 0x39
ja 0x404a11
inc eax
mov cl, byte [eax]
cmp cl, bl
jne 0x4049f2
lea eax, [ebp - 0xba8]
push eax
call fcn.00421fe6
jmp 0x404a1d
lea eax, [ebp - 0xba8]
push eax
call fcn.004138bc
cmp eax, ebx
pop ecx
mov dword [ebp - 0x44], eax
je 0x405368
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
push ecx
mov word [ebp - 0x40], ax
lea esi, [ebp - 0x44]
mov edi, esp
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
call fcn.00412b7e
pop ecx
jmp 0x4041e6
lea eax, [ebp - 0x3c]
push eax
push esi
lea eax, [ebp - 0x164]
push eax
push 0x42ecb0
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x404a81
mov eax, dword [0x459838]
cmp eax, ebx
je 0x405368
mov byte [eax + 6], bl
mov dword [eax], ebx
jmp 0x404a7a
lea eax, [ebp - 0x3c]
push eax
push esi
lea eax, [ebp - 0x164]
push eax
push 0x42ecc0
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x404ae1
cmp dword [ebp - 4], 1
jl 0x404ae1
lea eax, [ebp - 0xba8]
push eax
call fcn.0042203e
cmp ax, 0x100
pop ecx
jae case.default.0x404cad
movzx eax, ax
mov ecx, eax
shr ecx, 5
cdq
lea edi, [ecx*4 + 0x4594b0]
push 0x20
pop ecx
idiv ecx
xor eax, eax
inc eax
mov ecx, edx
shl eax, cl
or dword [edi], eax
jmp case.default.0x404cad
lea eax, [ebp - 0x3c]
push eax
push esi
lea eax, [ebp - 0x164]
push eax
push 0x42ecd0
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x404b43
cmp dword [ebp - 4], 1
jl 0x404b43
lea eax, [ebp - 0xba8]
push eax
call fcn.0042203e
cmp ax, 0x100
pop ecx
jae case.default.0x404cad
movzx eax, ax
mov ecx, eax
shr ecx, 5
cdq
lea edi, [ecx*4 + 0x4594b0]
push 0x20
pop ecx
idiv ecx
xor eax, eax
inc eax
mov ecx, edx
shl eax, cl
not eax
and dword [edi], eax
jmp case.default.0x404cad
lea eax, [ebp - 0x3c]
push eax
push esi
lea eax, [ebp - 0x164]
push eax
push 0x42ece0
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x404bbb
cmp dword [ebp - 4], 2
jl 0x404bbb
lea eax, [ebp - 0xaa8]
push eax
call dword [0x42a214]
cmp eax, 0x40
jne 0x405368
lea eax, [ebp - 0xaa8]
push eax
lea eax, [ebp - 0xba8]
push eax
call fcn.00401c74
test al, al
pop ecx
pop ecx
je 0x405368
cmp byte [ebp - 0xc36], bl
je 0x405368
mov byte [0x44f794], 1
mov byte [0x448064], 1
jmp 0x405368
lea eax, [ebp - 0x3c]
push eax
push esi
lea eax, [ebp - 0x164]
push eax
push 0x42ecf0
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x404be7
mov byte [0x44f794], 1
jmp 0x405368
lea eax, [ebp - 0x3c]
push eax
push esi
lea eax, [ebp - 0x164]
push eax
push 0x42ed00
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x404c69
cmp dword [ebp - 4], 2
jl 0x404c69
push 0x3f
pop ecx
mov byte [ebp - 0xeac], bl
lea edi, [ebp - 0xeab]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
stosb byte es:[edi], al
movzx eax, word [0x459440]
push eax
lea eax, [ebp - 0xaa8]
push eax
lea eax, [ebp - 0xba8]
push eax
push 0x42a4c8
lea eax, [ebp - 0xeac]
push 0xfa
push eax
call fcn.00422043
push ebx
push ebx
push ebx
lea eax, [ebp - 0xeac]
push 0x42a4bc
push eax
call fcn.0040ed45
add esp, 0x2c
jmp 0x405368
lea eax, [ebp - 0x3c]
push eax
push esi
lea eax, [ebp - 0x164]
push eax
push 0x42ec20
call fcn.00413410
add esp, 0xc
push eax
call edi
test eax, eax
jne 0x405368
cmp dword [ebp - 4], 2
jl 0x405368
lea eax, [ebp - 0xba8]
push eax
call fcn.0042203e
cmp eax, 0x44
pop ecx
ja case.default.0x404cad
jmp dword [eax*4 + 0x4053a9]
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov word [0x459440], ax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x459444], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov word [0x459448], ax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x45944a], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x45944b], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x45944c], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459450], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459451], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459452], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459453], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459454], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x459458], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459460], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459464], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x459468], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x45946c], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459470], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov word [0x459472], ax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov word [0x459474], ax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459476], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x459478], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x45947c], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459480], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459481], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459482], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459483], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459484], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459485], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459486], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459487], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459488], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459489], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x45948c], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x459490], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov word [0x459494], ax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459496], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459497], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459498], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459499], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x45949a], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x45949c], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x4594a0], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x4594a4], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x4594a5], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x4594a8], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x4594ac], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x4594d0], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x4594d5], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x4594d8], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x4594dc], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x4594dd], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x4594e0], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x4594e4], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x4594e8], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x4594ec], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x4594f0], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x4594f1], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x4594f2], al
jmp 0x405363
push 0x41
lea eax, [ebp - 0xaa8]
push eax
push 0x4594f3
call dword [0x42a208]
jmp case.default.0x404cad
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x459534], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459538], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x45953c], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459540], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
mov dword [0x459544], eax
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459548], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x459549], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x45954a], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x45954b], al
jmp 0x405363
lea eax, [ebp - 0xaa8]
push eax
call fcn.0042203e
test eax, eax
setne al
mov byte [0x45954c], al
pop ecx
mov byte [ebp - 5], 1
push 0x44f7d8
call fcn.00403f13
cmp dword [0x44f7d8], ebx
pop ecx
jne 0x403f74
cmp byte [ebp - 6], bl
je 0x405389
call fcn.00410905
cmp byte [ebp - 5], bl
je 0x405393
call fcn.00410a09
cmp byte [ebp - 0xd], bl
je 0x40539d
call fcn.004109c8
pop edi
pop esi
pop ebx
leave
ret
push ebx
call dword [0x42a11c]
mov ah, 0x4c
inc eax
add bl, cl
dec esp
inc eax
add cl, ah
dec esp
inc eax
add al, bh
dec esp
inc eax
add byte [ebx], dl
dec ebp
inc eax
add byte [esi], ch
dec ebp
inc eax
add byte [ebp + ecx*2 + 0x40], al
add byte [edi + 0x4d], bl
inc eax
add byte [edx + 0x4d], bh
inc eax
add byte [ebp - 0x4fffbfb3], dl
dec ebp
inc eax
add bl, cl
dec ebp
inc eax
add cl, ah
dec ebp
inc eax
add ah, bh
dec ebp
inc eax
add byte [edi], dl
dec esi
inc eax
add byte [0x4300404e], ch
dec esi
inc eax
add byte [esi + 0x4e], bl
inc eax
add byte [ebp + 0x4e], dh
inc eax
add byte [esi + ecx*2 + 0x4ea70040], cl
inc eax
add byte [ebp - 0x2cffbfb2], bh
dec esi
inc eax
add dh, ch
dec esi
inc eax
add byte [ecx], cl
dec edi
inc eax
add byte [edi + ecx*2], ah
inc eax
add byte [edi], bh
dec edi
inc eax
add byte [edx + 0x4f], bl
inc eax
add byte [ebp + 0x4f], dh
inc eax
add byte [eax - 0x54ffbfb1], dl
dec edi
inc eax
add dh, al
dec edi
inc eax
add cl, ah
dec edi
inc eax
add bh, dh
dec edi
inc eax
add byte [0x24004050], cl
push eax
inc eax
add byte [edi], bh
push eax
inc eax
add byte [edx + 0x50], bl
inc eax
add byte [ebp + 0x50], dh
inc eax
add byte [eax - 0x54ffbfb0], dl
push eax
inc eax
add cl, al
push eax
inc eax
add bh, dl
push eax
inc eax
add dl, dh
push eax
inc eax
add byte [0x23004051], cl
push ecx
inc eax
add byte [ecx], bh
push ecx
inc eax
add byte [edi + 0x51], cl
inc eax
add byte [edx + 0x51], ch
inc eax
add byte [eax - 0x64ffbfaf], al
push ecx
inc eax
add byte [esi - 0x33ffbfaf], dh
push ecx
inc eax
add dl, ah
push ecx
inc eax
add al, bh
push ecx
inc eax
add byte [esi], cl
push edx
inc eax
add byte [ecx], ch
push edx
inc eax
add byte [edx + edx*2 + 0x40], al
add byte [edi + 0x52], bl
inc eax
add byte [eax + 0x52], bh
inc eax
add byte [esi - 0x56ffbfae], cl
push edx
inc eax
add byte [edi - 0x25ffbfae], bh
push edx
inc eax
add ch, ch
push edx
inc eax
add byte [0x1d004053], al
push ebx
inc eax
add byte [0x4d004053], dh
push ebx
inc eax
add byte [ebp - 0x75], dl
push ebp
mov ebp, esp
sub esp, 0xc
push esi
push edi
mov edi, dword [ebp + 8]
mov al, byte [edi + 0x4c]
push dword [edi + 0x54]
mov byte [ebp + 0xb], al
call fcn.004175e3
mov esi, eax
test esi, esi
pop ecx
mov dword [ebp - 0xc], esi
jne 0x4054fc
mov esi, 0x44f7b8
push esi
call dword [0x42a1fc]
push esi
mov byte [edi + 0x4e], 0
call dword [0x42a200]
jmp 0x4056a3
mov byte [edi + 0x4d], 1
cmp byte [esi], 0x58
jne 0x405509
mov byte [edi + 0x4f], 1
cmp byte [esi], 0
mov eax, esi
je 0x405525
mov cl, byte [eax]
cmp cl, 0xd
je 0x40551c
cmp cl, 0xa
jne 0x40551f
mov byte [eax], 0x20
inc eax
cmp byte [eax], 0
jne 0x405510
push ebx
mov al, byte [esi]
cmp al, 0x23
je 0x405540
test al, al
je 0x405537
inc esi
mov al, byte [esi]
cmp al, 0x23
jne 0x40552c
cmp byte [esi], 0x23
jne 0x405699
cmp byte [esi], 0x3a
mov eax, esi
je 0x405552
cmp byte [eax], 0
je 0x405552
inc eax
cmp byte [eax], 0x3a
jne 0x405547
cmp byte [eax], 0x3a
jne 0x405699
inc esi
mov byte [eax], 0
mov dword [ebp - 8], esi
lea ecx, [eax + 1]
jmp 0x405570
test al, al
je 0x405699
inc ecx
mov al, byte [ecx]
cmp al, 0x20
je 0x405567
mov dl, al
test dl, dl
je 0x405699
cmp dl, 0x7b
mov eax, ecx
jne 0x4055a7
inc ecx
jmp 0x405593
test dl, dl
je 0x405699
inc eax
mov dl, byte [eax]
cmp dl, 0x7d
jne 0x40558a
jmp 0x4055ac
test dl, dl
je 0x405699
inc eax
mov dl, byte [eax]
cmp dl, 0x20
jne 0x40559c
cmp byte [eax], 0
je 0x405699
mov ebx, dword [ebp - 8]
push 2
push 0x42a4f4
push ebx
mov byte [eax], 0
mov dword [ebp - 4], ecx
lea esi, [eax + 1]
call fcn.004224e1
add esp, 0xc
test eax, eax
jne 0x4055e6
push dword [ebp - 4]
call fcn.0042203e
pop ecx
mov dword [edi + 0x44], eax
jmp 0x405526
push 2
push 0x42a4f0
push ebx
call fcn.004224e1
add esp, 0xc
test eax, eax
jne 0x40560b
push dword [ebp - 4]
call fcn.0042203e
pop ecx
mov dword [edi + 0x48], eax
jmp 0x405526
push 2
push 0x42a4ec
push ebx
call fcn.004224e1
add esp, 0xc
test eax, eax
jne 0x405526
mov al, byte [ebx + 2]
test al, al
je 0x405632
cmp al, 0x20
je 0x405632
cmp al, 0x3a
jne 0x405699
cmp dword [edi + 0x44], 0
je 0x405642
call fcn.0041411e
cmp eax, dword [edi + 0x44]
jb 0x405699
cmp dword [edi + 0x48], 0
je 0x405652
call fcn.0041411e
cmp eax, dword [edi + 0x48]
jae 0x405699
cmp byte [ebp + 0xb], 0
jne 0x405526
mov byte [edi + 0x4c], 1
call fcn.004109c8
push 0x42a4e8
push ebx
call fcn.00413761
test eax, eax
pop ecx
pop ecx
je 0x405685
push eax
call fcn.004039f1
test al, al
pop ecx
je 0x405526
push dword [ebp - 4]
mov dword [0x44f7d4], edi
call fcn.00403f34
pop ecx
jmp 0x405526
push dword [ebp - 0xc]
call fcn.00410c3b
pop ecx
pop ebx
pop edi
pop esi
leave
ret