Function at 0x401000
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x20
mov esi, esp
mov eax, dword [ebp + 8]
jmp 0x401013
push eax
mov edi, esp
sub esp, 8
mov ebx, esp
and ebx, 0xfffffff8
mov esp, ebx
mov dword [edi], eax
mov dword [ebx + 4], 0
mov dword [ebx], 0
jmp 0x401031
jmp 0x401033
mov eax, dword [ebx]
mov ecx, dword [ebx + 4]
sub eax, 0x2111f32b
sbb ecx, 6
setb al
test al, 1
jne 0x40104e
jmp 0x401049
jmp 0x401291
mov dword [esi], edi
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov edx, 0xaaaaaaab
mov eax, ecx
mul edx
imul ecx, ecx, 0xaaaaaaaa
add edx, ecx
imul ecx, edi, 0xaaaaaaab
add edx, ecx
mov ecx, 0x55555555
mov edi, 0x55555555
sub edi, eax
sbb ecx, edx
jb 0x401099
jmp 0x401080
mov eax, dword [esi]
jmp 0x401084
mov eax, dword [eax]
shl eax, 8
sub esp, 4
mov dword [esp], eax
call fcn.00401000
add esp, 4
jmp 0x401099
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov edx, 0xcccccccd
mov eax, ecx
mul edx
imul ecx, ecx, 0xcccccccc
add edx, ecx
imul ecx, edi, 0xcccccccd
add edx, ecx
mov ecx, 0x33333333
mov edi, 0x33333333
sub edi, eax
sbb ecx, edx
jb 0x4010de
jmp 0x4010c9
mov eax, dword [esi]
mov eax, dword [eax]
sar eax, 8
sub esp, 4
mov dword [esp], eax
call fcn.00401000
add esp, 4
jmp 0x4010e0
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov edx, 0xb6db6db7
mov eax, ecx
mul edx
imul ecx, ecx, 0x6db6db6d
add edx, ecx
imul ecx, edi, 0xb6db6db7
add edx, ecx
sub eax, 0x92492493
sbb edx, 0x24924924
setb al
test al, 1
jne 0x401115
jmp 0x401199
mov eax, dword [esi]
mov eax, dword [eax]
mov edx, eax
xor edx, 0xffffffff
and edx, 2
mov ecx, eax
and ecx, 0xfffffffd
mov edi, ecx
xor edi, 0xffffffff
mov dword [esi + 8], edx
and dword [esi + 8], edi
mov edi, edx
xor edi, 0xffffffff
mov dword [esi + 0x10], edi
mov edi, ecx
and edi, dword [esi + 0x10]
imul edi, dword [esi + 8]
mov dword [esi + 4], ecx
and dword [esi + 4], edx
or ecx, edx
imul ecx, dword [esi + 4]
add ecx, edi
mov edx, eax
and edx, 2
mov dword [esi + 0xc], edx
or eax, 2
xor edx, 0xffffffff
mov edi, eax
and edi, edx
mov dword [esi + 0x14], edi
mov edi, eax
or edi, edx
xor edi, 0xffffffff
imul edi, dword [esi + 0x14]
mov edx, eax
and edx, dword [esi + 0xc]
or eax, dword [esi + 0xc]
imul eax, edx
add eax, edi
xor edx, edx
sub edx, eax
xor eax, eax
sub eax, ecx
add edx, eax
xor eax, eax
sub eax, edx
sub esp, 4
mov dword [esp], eax
call fcn.00401000
add esp, 4
jmp 0x40119b
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov edx, 0x38e38e39
mov eax, ecx
mul edx
imul ecx, ecx, 0x8e38e38e
add edx, ecx
imul ecx, edi, 0x38e38e39
add edx, ecx
sub eax, 0x71c71c72
sbb edx, 0x1c71c71c
setb al
test al, 1
mov eax, dword [esi]
jne 0x4011cf
jmp 0x4011eb
jmp 0x4011d1
mov eax, dword [eax]
mov ecx, 2
cdq
idiv ecx
sub esp, 4
mov dword [esp], eax
call fcn.00401000
add esp, 4
jmp 0x4011eb
jmp 0x4011ed
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov edx, 0xba2e8ba3
mov eax, ecx
mul edx
imul ecx, ecx, 0x2e8ba2e8
add edx, ecx
imul ecx, edi, 0xba2e8ba3
add edx, ecx
sub eax, 0x5d1745d2
sbb edx, 0x1745d174
setb al
test al, 1
jne 0x40121f
jmp 0x401238
mov eax, dword [esi]
jmp 0x401223
mov eax, dword [eax]
add eax, 0xb
sub esp, 4
mov dword [esp], eax
call fcn.00401000
add esp, 4
jmp 0x401238
mov ecx, dword [ebx]
mov edi, dword [ebx + 4]
mov edx, 0xc4ec4ec5
mov eax, ecx
mul edx
imul ecx, ecx, 0x4ec4ec4e
add edx, ecx
imul ecx, edi, 0xc4ec4ec5
add edx, ecx
mov ecx, 0xb13b13b1
sub ecx, eax
mov eax, 0x13b13b13
sbb eax, edx
mov edi, dword [esi]
jb 0x40127d
jmp 0x40126a
mov eax, dword [edi]
sub eax, 0xd
sub esp, 4
mov dword [esp], eax
call fcn.00401000
add esp, 4
jmp 0x40127f
jmp 0x401281
mov eax, dword [ebx]
add eax, 1
adc dword [ebx + 4], 0
mov dword [ebx], eax
jmp 0x401031
cmp dword [edi], 0xca3ed
jne 0x4012a3
mov eax, dword [edi]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
xor eax, eax
sub esp, 4
mov dword [esp], 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]