Function at 0x40a24c
Capabilities:
Enumerate pe sections
Terminate process

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x64
push ebx
mov ebx, dword [ebp + 8]
xor eax, eax
push esi
push edi
mov edi, ecx
mov dword [esp + 0x24], eax
mov ecx, 0x4006
mov dword [esp + 0x10], edi
mov esi, ebx
mov byte [esp + 0xe], al
call fcn.0040dcd0
mov dword [esp + 0x14], eax
test eax, eax
je 0x41c4d9
mov al, byte [0x435755]
mov byte [esp + 0xf], al
push 0x2f
pop edx
mov ecx, esi
call fcn.0040a62f
mov esi, eax
test esi, esi
je 0x41c853
movzx eax, word [esi + 2]
push eax
call dword [sym.imp.msvcrt.dll_towlower]
pop ecx
movzx ecx, ax
test cx, cx
je 0x41c853
cmp ecx, 0x3f
je 0x41c7a1
cmp ecx, 0x71
je 0x41c4ea
push 0x6b
pop eax
cmp ecx, 0x63
je 0x40a33a
cmp cx, ax
je 0x41c715
cmp ecx, 0x72
je 0x40a33a
cmp ecx, 0x75
je 0x41c4f9
cmp ecx, 0x61
je 0x41c505
cmp ecx, 0x78
je 0x40a48b
cmp ecx, 0x79
je 0x41c511
cmp ecx, 0x65
je 0x41c51d
cmp ecx, 0x64
jne 0x40a5eb
mov edx, dword [ebp + 0xc]
lea eax, [esi + 4]
push eax
mov eax, esi
mov ecx, esi
sub eax, ebx
sar eax, 1
sub edx, eax
call fcn.0040f3a0
xor eax, eax
mov dword [edi], eax
mov dword [edi + 4], eax
jmp 0x40a28e
cmp cx, ax
je 0x41c715
mov dword [0x435758], 1
lea ebx, [esi + 4]
xor edi, edi
mov ecx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, di
jne 0x40a357
sub ecx, edx
sar ecx, 1
lea eax, [ecx + 2]
lea ecx, [eax + eax]
mov dword [esp + 0x20], eax
call fcn.0040dcd0
mov edi, eax
test edi, edi
je 0x41c724
mov edx, dword [esp + 0x20]
mov ecx, edi
push ebx
call fcn.0040f3a0
xor eax, eax
mov ecx, edi
mov word [esi], ax
call fcn.00409e8e
cmp byte [esp + 0xe], 0
mov esi, eax
push 0x22
pop ebx
jne 0x40a410
cmp word [esi], bx
jne 0x40a4ad
mov edi, 0x4000
mov ecx, edi
call fcn.0040dcd0
mov ebx, eax
mov ecx, edi
mov dword [esp + 0x18], ebx
call fcn.0040dcd0
mov dword [esp + 0x1c], eax
test ebx, ebx
je 0x41c78d
test eax, eax
je 0x41c78d
xor eax, eax
push 0x48
push eax
lea eax, [esp + 0x30]
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
lea ecx, [esi + 2]
push 0x22
pop edi
mov edx, edi
call fcn.0040a62f
test eax, eax
je 0x40a410
lea ebx, [eax + 2]
mov edx, edi
mov ecx, ebx
call fcn.0040a62f
test eax, eax
je 0x40a4b3
mov ebx, dword [esp + 0x14]
push 0x22
pop eax
cmp word [esi], ax
jne 0x40a457
add esi, 2
xor edx, edx
mov edi, esi
lea ecx, [edi + 2]
mov ax, word [edi]
add edi, 2
cmp ax, dx
jne 0x40a426
push 0x22
sub edi, ecx
mov ecx, esi
pop eax
mov edx, eax
sar edi, 1
call fcn.004101f5
test eax, eax
je 0x40a457
xor ecx, ecx
mov edx, edi
mov word [eax], cx
add eax, 2
push eax
mov ecx, esi
call fcn.0040fc40
mov ecx, esi
xor edi, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, di
jne 0x40a45e
sub ecx, edx
sar ecx, 1
push 0xa
pop eax
mov word [esi + ecx*2], ax
mov eax, dword [esp + 0x10]
mov dword [eax + 8], esi
mov ecx, ebx
call fcn.0040dc60
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
mov byte [0x435755], 1
mov edx, dword [ebp + 0xc]
lea eax, [esi + 4]
push eax
mov eax, esi
mov ecx, esi
sub eax, ebx
sar eax, 1
sub edx, eax
call fcn.0040f3a0
jmp 0x40a28e
mov ebx, dword [esp + 0x14]
jmp 0x40a457
movzx eax, word [ebx]
mov ecx, esi
mov dword [esp + 0x20], eax
xor eax, eax
push 0x26
pop edx
mov word [ebx], ax
call fcn.0040a62f
test eax, eax
jne 0x41c781
push 0x3c
pop edx
mov ecx, esi
call fcn.0040a62f
test eax, eax
jne 0x41c781
push 0x3e
pop edx
mov ecx, esi
call fcn.0040a62f
test eax, eax
jne 0x41c781
push 0x40
pop edx
mov ecx, esi
call fcn.0040a62f
test eax, eax
jne 0x41c781
push 0x5e
pop edx
mov ecx, esi
call fcn.0040a62f
test eax, eax
jne 0x41c781
push 0x7c
pop edx
mov ecx, esi
call fcn.0040a62f
test eax, eax
jne 0x41c781
movzx eax, word [esi]
mov edi, esi
test ax, ax
je 0x41c781
mov ecx, eax
push ecx
call dword [sym.imp.msvcrt.dll_iswspace]
pop ecx
test eax, eax
jne 0x40a559
add edi, 2
movzx eax, word [edi]
mov ecx, eax
test ax, ax
jne 0x40a53b
jmp 0x41c781
mov eax, dword [esp + 0x18]
mov ecx, esi
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x60], eax
xor eax, eax
mov dword [esp + 0x64], edi
mov dword [esp + 0x5c], eax
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, word [esp + 0x24]
jne 0x40a574
sub ecx, edx
mov eax, 0x2000
sar ecx, 1
cmp ecx, eax
jae 0x41c732
mov ecx, dword [esp + 0x18]
mov edx, eax
push esi
call fcn.0040f3a0
push 0x40234c
mov edx, 0x2000
mov ecx, edi
call fcn.0040f3a0
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x28]
mov word [ebx], ax
mov ebx, dword [esp + 0x14]
mov edx, ebx
push 0x2003
call fcn.0040f410
mov ecx, dword [esp + 0x18]
mov edi, eax
call fcn.0040dc60
mov ecx, dword [esp + 0x1c]
call fcn.0040dc60
test edi, edi
je 0x40a414
jmp 0x41c756
cmp ecx, 0x66
je 0x41c56b
cmp ecx, 0x76
je 0x41c5c8
cmp ecx, 0x74
je 0x41c637
mov edx, dword [ebp + 0xc]
lea edi, [esi + 4]
mov eax, esi
sub eax, ebx
sar eax, 1
sub edx, eax
cmp ecx, 0x73
jne 0x40a61e
mov byte [esp + 0xe], 1
push edi
mov ecx, esi
call fcn.0040f3a0
mov edi, dword [esp + 0x10]
jmp 0x40a28e
xor eax, eax
push eax
call fcn.00411e70
test eax, eax
je 0x41c4d9
jmp 0x41c74b
mov dword [0x44851c], 1
jmp 0x40a492
mov byte [0x448050], 1
jmp 0x40a492
xor eax, eax
mov byte [0x448050], al
jmp 0x40a492
xor eax, eax
mov byte [0x435755], al
jmp 0x40a492
mov edi, dword [ebp + 0xc]
mov eax, esi
sub eax, ebx
mov ecx, esi
sar eax, 1
sub edi, eax
lea eax, [esi + 4]
push eax
mov edx, edi
call fcn.0040f3a0
push 0x3a
pop eax
cmp word [esi], ax
jne 0x41c55f
push 3
lea eax, [esi + 2]
push 0x403cd4
push eax
call dword [sym.imp.msvcrt.dll__wcsnicmp]
add esp, 0xc
test eax, eax
jne 0x41c55f
mov byte [0x435755], al
jmp 0x41c605
mov byte [0x435755], 1
jmp 0x41c61c
mov edi, dword [ebp + 0xc]
mov eax, esi
sub eax, ebx
mov ecx, esi
sar eax, 1
sub edi, eax
lea eax, [esi + 4]
push eax
mov edx, edi
call fcn.0040f3a0
push 0x3a
pop eax
cmp word [esi], ax
jne 0x41c5b4
push 3
lea eax, [esi + 2]
push 0x403cd4
push eax
call dword [sym.imp.msvcrt.dll__wcsnicmp]
add esp, 0xc
test eax, eax
jne 0x41c5b4
push 0x20
pop eax
mov word [0x42d0d0], ax
mov word [0x42d0cc], ax
jmp 0x41c605
push 6
pop eax
push 4
mov word [0x42d0d0], ax
pop eax
mov word [0x42d0cc], ax
jmp 0x41c61c
mov edi, dword [ebp + 0xc]
mov eax, esi
sub eax, ebx
mov ecx, esi
sar eax, 1
sub edi, eax
lea eax, [esi + 4]
push eax
mov edx, edi
call fcn.0040f3a0
push 0x3a
pop eax
cmp word [esi], ax
jne 0x41c615
push 3
lea eax, [esi + 2]
push 0x403cd4
push eax
call dword [sym.imp.msvcrt.dll__wcsnicmp]
add esp, 0xc
test eax, eax
jne 0x41c615
mov byte [0x435754], al
lea eax, [esi + 8]
jmp 0x41c60d
lea eax, [esi + 6]
push eax
mov edx, edi
jmp 0x40a61f
mov byte [0x435754], 1
push 3
push 0x403cdc
push esi
call dword [sym.imp.msvcrt.dll__wcsnicmp]
add esp, 0xc
test eax, eax
jne 0x40a626
jmp 0x41c60a
cmp byte [0x435755], 0
je 0x40a606
push 0x3a
lea edi, [esi + 4]
pop eax
cmp word [edi], ax
jne 0x41c705
movzx eax, word [esi + 6]
push eax
call dword [sym.imp.msvcrt.dll_iswxdigit]
pop ecx
test eax, eax
je 0x41c705
movzx eax, word [esi + 8]
push eax
call dword [sym.imp.msvcrt.dll_iswxdigit]
pop ecx
test eax, eax
je 0x41c705
movzx eax, word [esi + 0xa]
push eax
call dword [sym.imp.msvcrt.dll_iswxdigit]
pop ecx
test eax, eax
jne 0x41c705
movzx eax, word [esi + 6]
push eax
call dword [sym.imp.msvcrt.dll_iswdigit]
pop ecx
movzx ecx, word [esi + 6]
test eax, eax
je 0x41c6a4
lea eax, [ecx - 0x30]
jmp 0x41c6b2
push ecx
call dword [sym.imp.msvcrt.dll_towlower]
pop ecx
push 0x57
pop ecx
sub ax, cx
movzx eax, ax
shl eax, 4
mov word [0x435764], ax
movzx eax, word [esi + 8]
push eax
call dword [sym.imp.msvcrt.dll_iswdigit]
pop ecx
movzx ecx, word [esi + 8]
test eax, eax
je 0x41c6d7
lea eax, [ecx - 0x30]
jmp 0x41c6e5
push ecx
call dword [sym.imp.msvcrt.dll_towlower]
pop ecx
push 0x57
pop ecx
sub ax, cx
mov edx, dword [ebp + 0xc]
mov ecx, edi
movzx eax, ax
or word [0x435764], ax
lea eax, [esi + 0xa]
push eax
mov eax, esi
sub eax, ebx
sar eax, 1
sub edx, eax
call fcn.0040f3a0
mov edx, dword [ebp + 0xc]
mov eax, esi
sub eax, ebx
sar eax, 1
sub edx, eax
jmp 0x40a61e
mov dword [0x44804c], 1
jmp 0x40a34d
xor eax, eax
push eax
call fcn.00411e70
test eax, eax
je 0x41c724
jmp 0x41c74b
xor ebx, ebx
push ebx
push 0x400023df
call fcn.004078e4
pop ecx
pop ecx
push ebx
call fcn.00411e70
test eax, eax
je 0x41c741
push 1
jmp 0x41c750
push esi
call dword [sym.imp.msvcrt.dll_exit]
cmp edi, 3
jne 0x40a457
xor ebx, ebx
push ebx
push dword [0x4357a8]
call fcn.004078e4
mov esi, dword [0x4357a8]
pop ecx
pop ecx
push ebx
call fcn.00411e70
test eax, eax
je 0x41c775
jmp 0x41c74f
mov eax, dword [esp + 0x20]
mov word [ebx], ax
jmp 0x40a410
mov esi, dword [0x4357a8]
xor eax, eax
push eax
call fcn.00411e70
test eax, eax
je 0x41c793
jmp 0x41c74f
call fcn.004299d0
xor ebx, ebx
cmp dword [0x43159c], ebx
jne 0x41c838
push ebx
push 0x40002399
call fcn.004063bd
pop ecx
pop ecx
cmp dword [0x43159c], ebx
jne 0x41c838
push ebx
push 0x4000239a
call fcn.004063bd
pop ecx
pop ecx
cmp byte [esp + 0xf], bl
jne 0x41c7e4
cmp byte [0x435755], bl
je 0x41c838
cmp dword [0x43159c], ebx
jne 0x41c838
push ebx
push 0x4000239b
call fcn.004063bd
pop ecx
pop ecx
cmp dword [0x43159c], ebx
jne 0x41c838
push ebx
push 0x4000239c
call fcn.004063bd
pop ecx
pop ecx
cmp dword [0x43159c], ebx
jne 0x41c838
push ebx
push 0x4000239d
call fcn.004063bd
pop ecx
pop ecx
cmp dword [0x43159c], ebx
jne 0x41c838
push ebx
push 0x4000239e
call fcn.004063bd
pop ecx
pop ecx
mov byte [0x44805b], bl
mov dword [0x44850c], ebx
push ebx
call fcn.00411e70
test eax, eax
je 0x41c844
jmp 0x41c74b
mov ebx, dword [esp + 0x14]
jmp 0x40a47b