Function at 0x401000
Capabilities:
Allocate thread local storage

Disassembly:
push 0x12c
push 0
push 0x4134c8
call sub.MSVCRT.dll_memset
add esp, 0xc
push 0
call sub.KERNEL32.dll_GetModuleHandleA
mov dword [0x4134cc], eax
push 0
push 0x1000
push 0
call sub.KERNEL32.dll_HeapCreate
mov dword [0x4134c8], eax
call section..text
mov eax, str.cgN
mov dword [0x4134fc], eax
call fcn.0040f4a0
call fcn.0040f28c
call fcn.0040d793
call fcn.0040d2c3
call fcn.0040cc70
call fcn.0040c8fb
call fcn.0040c640
call fcn.0040c621
call fcn.0040c598
call fcn.0040bd00
call fcn.0040ad2f
call fcn.00409f61
call fcn.00409c26
call fcn.004098ae
call fcn.00408421
call fcn.00408099
push dword [0x4135e0]
call fcn.00409c45
push 7
push 0x412060
lea eax, [0x4135e0]
push eax
push 8
call fcn.00409b94
push 0x4135d8
push 0x412070
push 7
push 0x401
push 8
call fcn.0040f18d
mov eax, 0x200
push eax
lea eax, [0x4135f0]
push eax
xor eax, eax
push eax
push 0x15
push 4
call fcn.0040d7b2
push dword [0x4135e8]
call fcn.00409c45
push 7
push 0x412068
lea eax, [0x4135e8]
push eax
push 8
call fcn.00409b94
mov edx, 0x412021
lea ecx, [0x413584]
call fcn.00405068
mov ebp, str.cgN
mov ebx, ebp
mov ebp, 0x412125
sub ebx, ebp
mov dword [0x413574], ebx
mov ebp, 0x412125
mov dword [0x413578], ebp
push dword [0x413574]
call fcn.0040c6b0
mov dword [0x413548], eax
mov dword [0x413508], 0
mov eax, dword [0x413574]
cmp eax, dword [0x413508]
jl 0x4011b1
mov ebx, dword [0x413578]
add ebx, dword [0x413508]
mov eax, ebx
call fcn.0040c6d0
mov ebx, eax
imul ebx, ebx, 0xffffffff
push ebx
mov ebx, dword [0x413548]
add ebx, dword [0x413508]
mov eax, ebx
call fcn.0040c6e0
inc dword [0x413508]
jno 0x401170
mov edx, dword [0x413ad0]
push edx
push edx
mov ebx, dword [0x413574]
add ebx, 0xfffffff8
push ebx
mov ebx, dword [0x413548]
add ebx, 4
push ebx
call fcn.0040c6f0
push 0x4134f0
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push dword [0x4134f0]
call fcn.004050d0
push 0x4134f0
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 1
push dword [0x4134f0]
call fcn.004051b0
push 0x413528
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 2
push dword [0x4134f0]
call fcn.004051b0
push 0x41357c
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 3
push dword [0x4134f0]
call fcn.004051b0
push 0x413520
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 4
push dword [0x4134f0]
call fcn.004051b0
push 0x4135d4
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 5
push dword [0x4134f0]
call fcn.004051b0
push 0x41352c
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 6
push dword [0x4134f0]
call fcn.004051b0
push 0x41359c
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 7
push dword [0x4134f0]
call fcn.004051b0
push 0x4134f4
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 8
push dword [0x4134f0]
call fcn.004051b0
push 0x413538
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 9
push dword [0x4134f0]
call fcn.004051b0
push 0x4135c0
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 0xa
push dword [0x4134f0]
call fcn.004051b0
push 0x413500
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 0xb
push dword [0x4134f0]
call fcn.004051b0
push 0x4135cc
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 0xc
push dword [0x4134f0]
call fcn.004051b0
push 0x41358c
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 0xd
push dword [0x4134f0]
call fcn.004051b0
push 0x41353c
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 0xe
push dword [0x4134f0]
call fcn.004051b0
push 0x41356c
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 0xf
push dword [0x4134f0]
call fcn.004051b0
push 0x4134e0
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 0x10
push dword [0x4134f0]
call fcn.004051b0
push 0x4135bc
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 0x11
push dword [0x4134f0]
call fcn.004051b0
push 0x413504
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 0x12
push dword [0x4134f0]
call fcn.004051b0
push 0x413564
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 0x13
push dword [0x4134f0]
call fcn.004051b0
push 0x413594
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 0x14
push dword [0x4134f0]
call fcn.004051b0
push 0x413560
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 0x15
push dword [0x4134f0]
call fcn.004051b0
push 0x4135a4
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 0x16
push dword [0x4134f0]
call fcn.004051b0
push 0x413588
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 0x17
push dword [0x4134f0]
call fcn.004051b0
push 0x4135ac
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 0x18
push dword [0x4134f0]
call fcn.004051b0
push 0x413530
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 0x19
push dword [0x4134f0]
call fcn.004051b0
push 0x413534
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 0x1a
push dword [0x4134f0]
call fcn.004051b0
push 0x4135a8
call fcn.0040f520
mov edx, dword [0x413ad0]
push edx
push edx
push dword [0x413584]
push 0x1b
push dword [0x4134f0]
call fcn.004051b0
push 0x41355c
call fcn.0040f520
call fcn.0040ab0f
mov ebx, eax
cmp ebx, 0x3c
jge 0x40165e
push 0x10
push dword [0x4135a4]
push dword [0x4135bc]
call fcn.004080d0
jmp 0x4017b7
mov eax, str.cgN
mov dword [0x4134fc], eax
mov eax, dword [0x4134fc]
mov eax, dword [eax]
mov dword [0x413508], eax
add dword [0x4134fc], 4
mov eax, dword [0x4134fc]
mov eax, dword [eax]
mov dword [0x41350c], eax
add dword [0x4134fc], 4
mov eax, dword [0x4134fc]
mov eax, dword [eax]
mov dword [0x413510], eax
add dword [0x4134fc], 4
mov eax, dword [0x4134fc]
mov eax, dword [eax]
mov dword [0x413514], eax
add dword [0x4134fc], 4
mov eax, dword [0x4134fc]
mov eax, dword [eax]
mov dword [0x413518], eax
add dword [0x4134fc], 4
push 0x14
call fcn.0040c6b0
mov dword [0x41351c], eax
push dword [0x413508]
mov eax, dword [0x41351c]
call fcn.0040c750
push dword [0x41350c]
mov ebx, dword [0x41351c]
add ebx, 4
mov eax, ebx
call fcn.0040c750
push dword [0x413510]
mov ebx, dword [0x41351c]
add ebx, 8
mov eax, ebx
call fcn.0040c750
push dword [0x413514]
mov ebx, dword [0x41351c]
add ebx, 0xc
mov eax, ebx
call fcn.0040c750
push dword [0x413518]
mov ebx, dword [0x41351c]
add ebx, 0x10
mov eax, ebx
call fcn.0040c750
mov edx, dword [0x413ad0]
push edx
push edx
push 0x14
push dword [0x41351c]
call fcn.0040dd70
push 0x4135d0
call fcn.0040f520
call fcn.00408fcd
mov edx, 0x412025
lea ecx, [0x413598]
call fcn.00405068
mov edx, str..bat
lea ecx, [0x413590]
call fcn.00405068
mov edx, str..exe
lea ecx, [0x413550]
call fcn.00405068
push 1
lea eax, [0x402c98]
push eax
call sub.KERNEL32.dll_SetConsoleCtrlHandler
lea eax, [0x4029ba]
push eax
call fcn.004099b0
call fcn.00404217
push 0
call 0x4017d6
call fcn.0040f4f0
push dword [0x4134c8]
call sub.KERNEL32.dll_HeapDestroy
call sub.KERNEL32.dll_ExitProcess
call fcn.004098c2
call fcn.00409b00
call fcn.00409fd1
call fcn.0040ad18
call fcn.0040bd8e
call fcn.0040c58c
call fcn.0040c907
call fcn.0040cc60
call fcn.0040d670
call fcn.0040c660
ret