Function at 0x4293a0
Capabilities:
Accept command line arguments
Check mutex and terminate process on windows
Check mutex on windows
Clear file content
Create pipe
Create process on windows
Create thread
Delete file
Enumerate files on windows
Get common file path
Get file attributes
Get thread local storage value
Query environment variable
Query or enumerate registry value
Resolve dns
Set environment variable
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, 0x120
mov dword [ebp - 0x78], 0x17030
mov dword [ebp - 0xa4], 0xc0fe
mov dword [ebp - 0x114], 0x176ac
mov dword [ebp - 0x118], 0xc891
mov dword [ebp - 0x6c], 0xaa85
mov dword [ebp - 0x70], 0xea23
mov dword [ebp - 0x8c], 0x156e5
mov dword [ebp - 0x54], 0xe2e6
mov dword [ebp - 0x74], 0xd6b4
mov dword [ebp - 0x90], 0x3e18
mov dword [ebp - 0x80], 0xf9f3
mov dword [ebp - 0x68], 0xc458
mov dword [ebp - 0x98], 0x8ed7
mov dword [ebp - 0x60], 0xc151
mov dword [ebp - 0x84], 0x2b85
mov dword [ebp - 0x5c], 0x15527
mov dword [ebp - 0x94], 0x11484
mov dword [ebp - 0x48], 0x16f42
mov dword [ebp - 0x88], 0x64d1
mov dword [ebp - 0x64], 0x7d35
mov dword [ebp - 0x58], 0x17e57
call fcn.004232c0
call fcn.00408020
call fcn.0040d0b0
call fcn.00426b50
call fcn.00416fd0
cmp dword [0x7b3254], 0
jne 0x4294a6
push 0x9dfa
push 0x87ed
push 0xbcc0
push 0x400f
push 0x394
call fcn.004036e0
add esp, 0x14
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [0x7b3254], eax
call fcn.0041ad80
mov eax, dword [0x7b3268]
push eax
mov ecx, dword [0x7b3258]
push ecx
mov edx, dword [0x7b3264]
push edx
mov eax, dword [0x7b3250]
push eax
mov ecx, dword [0x7b3254]
push ecx
push 0xc760
call fcn.00411be0
add esp, 4
push eax
mov edx, dword [0x7b3254]
push edx
call fcn.0042a220
add esp, 8
call eax
test eax, eax
je 0x42a011
call fcn.0041e3d0
cmp dword [0x7b3254], 0
je 0x42a011
mov dword [ebp - 0x28], 0x2b66
mov dword [ebp - 0x44], 0x2091
mov dword [ebp - 4], 0x850a
mov dword [ebp - 0x38], 0x84f1
mov dword [ebp - 0x14], 0x274b
mov dword [ebp - 0x30], 0xb5fc
mov dword [ebp - 0x50], 0xa419
mov dword [ebp - 0x34], 0x18599
mov dword [ebp - 8], 0xd72
mov dword [ebp - 0x20], 0x8677
mov dword [ebp - 0x1c], 0xba7f
mov dword [ebp - 0x3c], 0x6f6b
mov dword [ebp - 0x7c], 0x117f5
mov dword [ebp - 0x4c], 0xe357
mov dword [ebp - 0x10], 0x1643a
mov dword [ebp - 0xc], 0xd1ba
mov dword [ebp - 0x24], 0xb297
mov dword [ebp - 0x18], 0x14f5a
mov dword [ebp - 0x2c], 0x16425
mov dword [ebp - 0x40], 0x162c5
call fcn.0042cc40
call fcn.004232c0
call fcn.00424b20
mov eax, dword [ebp - 0x30]
add eax, 0xaf0d
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x34]
sub ecx, dword [ebp - 0x30]
mov dword [ebp - 0x34], ecx
jmp 0x4295bf
mov edx, dword [ebp - 0x34]
add edx, 1
mov dword [ebp - 0x34], edx
mov eax, dword [ebp - 0x34]
cmp eax, dword [ebp - 0x44]
jge 0x429907
mov ecx, dword [ebp - 4]
add ecx, 1
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0xc]
xor edx, dword [ebp - 4]
cmp edx, dword [ebp - 0x40]
jge 0x4296b9
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x1c]
jl 0x429612
mov ecx, dword [ebp - 0x18]
and ecx, dword [ebp - 0x20]
cmp ecx, dword [ebp - 0xc]
jge 0x4295fe
mov edx, dword [ebp - 0x2c]
cmp edx, dword [ebp - 0x28]
jl 0x429612
mov eax, dword [ebp - 4]
cmp eax, dword [ebp - 0x38]
jl 0x429612
mov ecx, dword [ebp - 0x14]
cmp ecx, dword [ebp - 0xc]
jge 0x4296b9
mov edx, dword [ebp - 8]
and edx, dword [ebp - 0x3c]
jne 0x42964f
mov eax, dword [ebp - 0x1c]
cmp eax, dword [ebp - 0x4c]
jge 0x4296b9
mov ecx, dword [ebp - 0x38]
mov dword [ebp - 0xa8], ecx
mov edx, dword [ebp - 0x7c]
mov dword [ebp - 0xac], edx
mov eax, dword [ebp - 0x38]
sub eax, 1
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0xa8]
cmp ecx, dword [ebp - 0xac]
jge 0x4296b9
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0xb0], edx
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0xb4], eax
mov ecx, dword [ebp - 0x24]
sub ecx, 1
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 0xb0]
cmp edx, dword [ebp - 0xb4]
jge 0x4296b9
mov eax, dword [ebp - 0x18]
sub eax, 1
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x18]
xor ecx, dword [ebp - 0x10]
cmp ecx, dword [ebp - 0x2c]
jge 0x4296b9
mov edx, dword [ebp - 8]
sub edx, 1
mov dword [ebp - 8], edx
mov eax, dword [ebp - 8]
cmp eax, dword [ebp - 0x50]
jge 0x4296b9
mov ecx, dword [ebp - 4]
add ecx, dword [ebp - 0x2c]
je 0x4296b9
mov edx, dword [ebp - 0x20]
imul edx, dword [ebp - 0x1c]
test edx, edx
je 0x4296b9
mov eax, dword [ebp - 4]
add eax, 1
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x24]
add ecx, 1
mov dword [ebp - 0x24], ecx
mov edx, dword [ebp - 8]
add edx, dword [ebp - 0x3c]
je 0x429761
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0xb8], eax
mov ecx, dword [ebp - 0xc]
mov dword [ebp - 0xbc], ecx
mov edx, dword [ebp - 0x18]
add edx, 1
mov dword [ebp - 0x18], edx
mov eax, dword [ebp - 0xb8]
cmp eax, dword [ebp - 0xbc]
jl 0x4296ff
mov ecx, dword [ebp - 0x4c]
cmp ecx, dword [ebp - 8]
jge 0x429761
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0xc0], edx
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0xc4], eax
mov ecx, dword [ebp - 0x1c]
sub ecx, 1
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0xc0]
cmp edx, dword [ebp - 0xc4]
jge 0x429734
mov eax, dword [ebp - 0x24]
imul eax, dword [ebp - 0x2c]
cmp eax, dword [ebp - 0x18]
jl 0x429758
mov ecx, dword [ebp - 0x18]
cmp ecx, dword [ebp - 0x28]
jge 0x429761
mov edx, dword [ebp - 0x20]
sub edx, 1
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 8]
cmp eax, dword [ebp - 0x20]
jge 0x429761
mov ecx, dword [ebp - 0x7c]
add ecx, dword [ebp - 0x3c]
cmp ecx, dword [ebp - 4]
jge 0x429761
mov edx, dword [ebp - 4]
sub edx, 1
mov dword [ebp - 4], edx
mov eax, dword [ebp - 0x20]
sub eax, 1
mov dword [ebp - 0x20], eax
mov ecx, dword [ebp - 0x1c]
cmp ecx, dword [ebp - 0x20]
jl 0x429792
mov edx, dword [ebp - 8]
cmp edx, dword [ebp - 0x50]
jge 0x42979b
mov eax, dword [ebp - 0xc]
sub eax, dword [ebp - 0x24]
je 0x42979b
mov ecx, dword [ebp - 0x30]
cmp ecx, dword [ebp - 4]
jge 0x42979b
mov edx, dword [ebp - 0x40]
cmp edx, dword [ebp - 0x14]
jge 0x42979b
mov eax, dword [ebp - 0x10]
add eax, 1
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x2c]
or ecx, dword [ebp - 0xc]
je 0x4297f1
mov edx, dword [ebp - 0x10]
add edx, 1
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 0x10]
add eax, dword [ebp - 8]
cmp eax, dword [ebp - 0x24]
jge 0x4297f1
mov ecx, dword [ebp - 0x24]
mov dword [ebp - 0xc8], ecx
mov edx, dword [ebp - 0x18]
mov dword [ebp - 0xcc], edx
mov eax, dword [ebp - 0x18]
sub eax, 1
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0xc8]
cmp ecx, dword [ebp - 0xcc]
jl 0x4297e8
mov edx, dword [ebp - 0x40]
cmp edx, dword [ebp - 4]
jge 0x4297f1
mov eax, dword [ebp - 0x10]
add eax, 1
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0xc]
cmp ecx, dword [ebp - 0x18]
jge 0x429836
mov edx, dword [ebp - 0x1c]
cmp edx, dword [ebp - 0x2c]
jge 0x42980d
mov dword [ebp - 0x9c], 1
jmp 0x429817
mov dword [ebp - 0x9c], 0
mov eax, dword [ebp - 8]
or eax, dword [ebp - 0x9c]
je 0x429836
mov ecx, dword [ebp - 0x40]
and ecx, dword [ebp - 0x14]
cmp ecx, dword [ebp - 0x50]
jge 0x429836
mov edx, dword [ebp - 0x30]
sub edx, 1
mov dword [ebp - 0x30], edx
mov eax, dword [ebp - 8]
sub eax, 1
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 0xc]
add ecx, 1
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 8]
add edx, 1
mov dword [ebp - 8], edx
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 8]
jl 0x4298a6
mov ecx, dword [ebp - 0x2c]
add ecx, 1
mov dword [ebp - 0x2c], ecx
mov edx, dword [ebp - 4]
cmp edx, dword [ebp - 0x2c]
jl 0x4298a6
mov eax, dword [ebp - 0x4c]
cmp eax, dword [ebp - 0x20]
jl 0x4298a6
mov ecx, dword [ebp - 0x3c]
add ecx, dword [ebp - 0x38]
mov dword [ebp - 0xd0], ecx
mov edx, dword [ebp - 0x28]
mov dword [ebp - 0xd4], edx
mov eax, dword [ebp - 0x38]
sub eax, 1
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0xd0]
cmp ecx, dword [ebp - 0xd4]
jl 0x4298a6
mov edx, dword [ebp - 0x14]
cmp edx, dword [ebp - 0x30]
jge 0x4298af
mov eax, dword [ebp - 0x30]
sub eax, 1
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0x24]
imul ecx, dword [ebp - 0x28]
test ecx, ecx
jne 0x4298e6
mov edx, dword [ebp - 0x18]
cmp edx, dword [ebp - 0x50]
jl 0x4298e6
mov eax, dword [ebp - 4]
cmp eax, dword [ebp - 8]
jl 0x4298e6
mov ecx, dword [ebp - 0x14]
add ecx, 1
mov dword [ebp - 0x14], ecx
mov edx, dword [ebp - 0x14]
cmp edx, dword [ebp - 0xc]
jge 0x429902
mov eax, dword [ebp - 0x38]
sub eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x30]
jge 0x429902
mov ecx, dword [ebp - 0x14]
cmp ecx, dword [ebp - 4]
jl 0x4298f9
mov edx, dword [ebp - 0x50]
imul edx, dword [ebp - 0x10]
test edx, edx
je 0x429902
mov eax, dword [ebp - 4]
sub eax, 1
mov dword [ebp - 4], eax
jmp 0x4295b6
mov ecx, dword [ebp - 0x10]
sub ecx, 0x11968
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 0x40]
sub edx, dword [ebp - 0x10]
mov dword [ebp - 0x40], edx
jmp 0x429927
mov eax, dword [ebp - 0x40]
add eax, 1
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x40]
cmp ecx, dword [ebp - 0x7c]
jge 0x429b92
mov edx, dword [ebp - 0x44]
add edx, 1
mov dword [ebp - 0x44], edx
mov eax, dword [ebp - 0xc]
add eax, 1
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 4]
add ecx, 1
mov dword [ebp - 4], ecx
mov edx, dword [ebp - 0x34]
cmp edx, dword [ebp - 0x20]
jge 0x429978
mov eax, dword [ebp - 0x14]
add eax, 1
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x14]
sub ecx, dword [ebp - 0x4c]
je 0x429978
mov edx, dword [ebp - 0x24]
xor edx, dword [ebp - 0x18]
je 0x429978
mov eax, dword [ebp - 0x1c]
sub eax, 1
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x28]
add ecx, dword [ebp - 0x3c]
je 0x429a4a
mov edx, dword [ebp - 0xc]
cmp edx, dword [ebp - 0x2c]
jge 0x429a4a
mov eax, dword [ebp - 0x10]
or eax, dword [ebp - 0x4c]
mov dword [ebp - 0xd8], eax
mov ecx, dword [ebp - 0x10]
sub ecx, 1
mov dword [ebp - 0x10], ecx
cmp dword [ebp - 0xd8], 0
je 0x4299ba
mov edx, dword [ebp - 0x44]
imul edx, dword [ebp - 0xc]
cmp edx, dword [ebp - 4]
jl 0x4299fc
mov eax, dword [ebp - 0x14]
add eax, 1
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x38]
cmp ecx, dword [ebp - 0x14]
jl 0x4299fc
mov edx, dword [ebp - 4]
xor edx, dword [ebp - 0x30]
jne 0x4299fc
mov eax, dword [ebp - 0x34]
cmp eax, dword [ebp - 8]
jge 0x4299e7
mov dword [ebp - 0xa0], 1
jmp 0x4299f1
mov dword [ebp - 0xa0], 0
mov ecx, dword [ebp - 0x50]
xor ecx, dword [ebp - 0xa0]
je 0x429a4a
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0xdc], edx
mov eax, dword [ebp - 8]
mov dword [ebp - 0xe0], eax
mov ecx, dword [ebp - 0x1c]
sub ecx, 1
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0xdc]
cmp edx, dword [ebp - 0xe0]
jl 0x429a41
mov eax, dword [ebp - 0x3c]
add eax, 1
mov dword [ebp - 0x3c], eax
mov ecx, dword [ebp - 0x44]
xor ecx, dword [ebp - 0x3c]
jne 0x429a41
mov edx, dword [ebp - 4]
xor edx, dword [ebp - 0x20]
cmp edx, dword [ebp - 0x38]
jge 0x429a4a
mov eax, dword [ebp - 0x2c]
add eax, 1
mov dword [ebp - 0x2c], eax
mov ecx, dword [ebp - 8]
imul ecx, dword [ebp - 0x30]
test ecx, ecx
je 0x429afb
mov edx, dword [ebp - 0x34]
and edx, dword [ebp - 0x28]
cmp edx, dword [ebp - 0x20]
jge 0x429afb
mov eax, dword [ebp - 0x28]
sub eax, dword [ebp - 0x24]
jne 0x429aa8
mov ecx, dword [ebp - 0x14]
and ecx, dword [ebp - 0x10]
mov dword [ebp - 0xe4], ecx
mov edx, dword [ebp - 0x10]
sub edx, 1
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 0x14]
sub eax, 1
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0xe4], 0
jne 0x429aa8
mov ecx, dword [ebp - 0x44]
add ecx, 1
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp - 0x30]
add edx, dword [ebp - 0x44]
je 0x429afb
mov eax, dword [ebp - 0x34]
add eax, 1
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x34]
add ecx, dword [ebp - 0x28]
je 0x429afb
mov edx, dword [ebp - 0x4c]
add edx, 1
mov dword [ebp - 0x4c], edx
mov eax, dword [ebp - 8]
imul eax, dword [ebp - 0x4c]
cmp eax, dword [ebp - 0xc]
jl 0x429af2
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [ebp - 0xc]
jge 0x429aea
mov edx, dword [ebp - 0x1c]
cmp edx, dword [ebp - 0x28]
jge 0x429aea
mov eax, dword [ebp - 0x34]
imul eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x38]
jl 0x429af2
mov ecx, dword [ebp - 0x2c]
cmp ecx, dword [ebp - 0x3c]
jge 0x429afb
mov edx, dword [ebp - 0x28]
add edx, 1
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x20]
sub eax, dword [ebp - 0x24]
jne 0x429b40
mov ecx, dword [ebp - 0x34]
cmp ecx, dword [ebp - 0x44]
jge 0x429b17
mov edx, dword [ebp - 0x1c]
imul edx, dword [ebp - 4]
cmp edx, dword [ebp - 0xc]
jl 0x429b40
mov eax, dword [ebp - 8]
mov dword [ebp - 0xe8], eax
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0xec], ecx
mov edx, dword [ebp - 0x28]
add edx, 1
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0xe8]
cmp eax, dword [ebp - 0xec]
jge 0x429b72
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0xf0], ecx
mov edx, dword [ebp - 0xc]
mov dword [ebp - 0xf4], edx
mov eax, dword [ebp - 0xc]
sub eax, 1
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp - 0xf0]
cmp ecx, dword [ebp - 0xf4]
jge 0x429b72
mov edx, dword [ebp - 8]
add edx, 1
mov dword [ebp - 8], edx
mov eax, dword [ebp - 0x18]
sub eax, 1
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x1c]
add ecx, 1
mov dword [ebp - 0x1c], ecx
mov edx, dword [ebp - 0x3c]
sub edx, 1
mov dword [ebp - 0x3c], edx
jmp 0x42991e
call dword [sym.imp.KERNEL32.dll_RtlUnwind]
call dword [sym.imp.KERNEL32.dll_ResetEvent]
call dword [sym.imp.CRYPT32.dll_CertFindCertificateInStore]
call dword [sym.imp.USER32.dll_GetSysColorBrush]
call dword [sym.imp.GDI32.dll_GetObjectA]
call dword [sym.imp.USER32.dll_BeginPaint]
call dword [sym.imp.GDI32.dll_CreateSolidBrush]
call dword [sym.imp.KERNEL32.dll_GetEnvironmentStringsW]
call dword [sym.imp.USER32.dll_TranslateAcceleratorA]
call dword [sym.imp.USER32.dll_TranslateMessage]
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
call dword [sym.imp.SHELL32.dll_Shell_NotifyIconA]
call dword [sym.imp.KERNEL32.dll_TryEnterCriticalSection]
call dword [sym.imp.USER32.dll_SetTimer]
call dword [sym.imp.KERNEL32.dll_CreateTimerQueue]
call dword [sym.imp.USER32.dll_EndPaint]
call dword [sym.imp.KERNEL32.dll_WriteFile]
call dword [sym.imp.USER32.dll_SetPropA]
call dword [sym.imp.KERNEL32.dll_DeleteCriticalSection]
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSectionAndSpinCount]
call dword [sym.imp.KERNEL32.dll_SetEndOfFile]
call dword [sym.imp.KERNEL32.dll_CreateSemaphoreA]
call dword [sym.imp.USER32.dll_DefWindowProcA]
call dword [sym.imp.KERNEL32.dll_Sleep]
call dword [sym.imp.KERNEL32.dll_CreateProcessA]
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
call dword [sym.imp.KERNEL32.dll_CreatePipe]
call dword [sym.imp.USER32.dll_GetPropA]
call dword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsW]
call dword [sym.imp.KERNEL32.dll_LoadLibraryExW]
call dword [sym.imp.KERNEL32.dll_GetProcessHeap]
call dword [sym.imp.KERNEL32.dll_HeapSize]
call dword [sym.imp.KERNEL32.dll_RaiseException]
mov eax, dword [ebp - 0x84]
add eax, dword [ebp - 0x5c]
cmp eax, dword [ebp - 0x98]
jge 0x42a051
mov ecx, dword [ebp - 0x64]
cmp ecx, dword [ebp - 0x58]
jge 0x42a051
mov edx, dword [ebp - 0x6c]
or edx, dword [ebp - 0x74]
mov dword [ebp - 0xf8], edx
mov eax, dword [ebp - 0x6c]
add eax, 1
mov dword [ebp - 0x6c], eax
cmp dword [ebp - 0xf8], 0
je 0x42a051
mov ecx, dword [ebp - 0x5c]
sub ecx, 1
mov dword [ebp - 0x5c], ecx
mov edx, dword [ebp - 0x54]
sub edx, 0x3408
mov dword [ebp - 0x54], edx
mov eax, dword [ebp - 0x60]
add eax, dword [ebp - 0x54]
mov dword [ebp - 0x60], eax
jmp 0x42a071
mov ecx, dword [ebp - 0x60]
add ecx, 1
mov dword [ebp - 0x60], ecx
mov edx, dword [ebp - 0x60]
cmp edx, dword [ebp - 0x78]
jge 0x42a168
mov eax, dword [ebp - 0x80]
sub eax, 1
mov dword [ebp - 0x80], eax
mov ecx, dword [ebp - 0x58]
sub ecx, 1
mov dword [ebp - 0x58], ecx
mov edx, dword [ebp - 0x58]
cmp edx, dword [ebp - 0x98]
jge 0x42a0a3
mov eax, dword [ebp - 0x68]
sub eax, 1
mov dword [ebp - 0x68], eax
mov ecx, dword [ebp - 0x48]
add ecx, 1
mov dword [ebp - 0x48], ecx
mov edx, dword [ebp - 0x80]
mov dword [ebp - 0xfc], edx
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x100], eax
mov ecx, dword [ebp - 0x70]
add ecx, 1
mov dword [ebp - 0x70], ecx
mov edx, dword [ebp - 0xfc]
cmp edx, dword [ebp - 0x100]
jl 0x42a117
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x104], eax
mov ecx, dword [ebp - 0xa4]
mov dword [ebp - 0x108], ecx
mov edx, dword [ebp - 0x64]
sub edx, 1
mov dword [ebp - 0x64], edx
mov eax, dword [ebp - 0x104]
cmp eax, dword [ebp - 0x108]
jl 0x42a117
mov ecx, dword [ebp - 0x54]
cmp ecx, dword [ebp - 0x88]
jge 0x42a142
mov edx, dword [ebp - 0x58]
cmp edx, dword [ebp - 0x84]
jge 0x42a142
mov eax, dword [ebp - 0x70]
cmp eax, dword [ebp - 0x84]
jl 0x42a133
mov ecx, dword [ebp - 0x48]
sub ecx, 1
mov dword [ebp - 0x48], ecx
mov edx, dword [ebp - 0x64]
cmp edx, dword [ebp - 0x48]
jge 0x42a142
mov eax, dword [ebp - 0x88]
add eax, 1
mov dword [ebp - 0x88], eax
mov ecx, dword [ebp - 0x68]
sub ecx, 1
mov dword [ebp - 0x68], ecx
mov edx, dword [ebp - 0x48]
add edx, 1
mov dword [ebp - 0x48], edx
mov eax, dword [ebp - 0x8c]
sub eax, 1
mov dword [ebp - 0x8c], eax
jmp 0x42a068
mov ecx, dword [ebp - 0x8c]
mov dword [ebp - 0x10c], ecx
mov edx, dword [ebp - 0x54]
mov dword [ebp - 0x110], edx
mov eax, dword [ebp - 0x54]
add eax, 1
mov dword [ebp - 0x54], eax
mov ecx, dword [ebp - 0x10c]
cmp ecx, dword [ebp - 0x110]
jl 0x42a1bf
mov edx, dword [ebp - 0x48]
cmp edx, dword [ebp - 0x68]
jge 0x42a213
mov eax, dword [ebp - 0x74]
sub eax, 1
mov dword [ebp - 0x74], eax
mov ecx, dword [ebp - 0x90]
sub ecx, 1
mov dword [ebp - 0x90], ecx
mov edx, dword [ebp - 0x74]
cmp edx, dword [ebp - 0x90]
jge 0x42a213
mov eax, dword [ebp - 0x78]
add eax, dword [ebp - 0x5c]
cmp eax, dword [ebp - 0x58]
jl 0x42a20a
mov ecx, dword [ebp - 0x94]
sub ecx, 1
mov dword [ebp - 0x94], ecx
mov edx, dword [ebp - 0x94]
xor edx, dword [ebp - 0x48]
cmp edx, dword [ebp - 0x98]
jl 0x42a20a
mov eax, dword [ebp - 0x58]
add eax, dword [ebp - 0xa4]
cmp eax, dword [ebp - 0x6c]
jge 0x42a213
mov ecx, dword [ebp - 0x114]
imul ecx, dword [ebp - 0x118]
cmp ecx, dword [ebp - 0x6c]
jge 0x42a213
mov edx, dword [ebp - 0x5c]
add edx, 1
mov dword [ebp - 0x5c], edx
mov eax, dword [ebp - 0x78]
sub eax, 1
mov dword [ebp - 0x78], eax
mov esp, ebp
pop ebp
ret