Function at 0x40a937
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x50
mov dword [ebp - 0x10], 0xd84d8ba6
mov esi, dword [ebp - 0x44]
mov di, 0xe
mov ebx, 3
mov eax, dword [ebp - 0x10]
cmp eax, 0x7e19441
jg 0x40a9b9
cmp eax, 0xc477d7be
jle 0x40aa25
cmp eax, 0xd84d8ba5
jle 0x40aaae
cmp eax, 0xfc5c6eb6
jle 0x40abc3
cmp eax, 0xfc5c6eb7
je 0x40ae02
cmp eax, 0xfceca297
je 0x40ae1d
cmp eax, 0x21397d3
jne 0x40a953
mov eax, dword [ebp - 0x14]
add eax, eax
and eax, 0xfffffe
imul eax, eax, 0x63
add eax, 0x3d1a
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0xc477d7bf
jmp 0x40a953
cmp eax, 0x2a390ecf
jle 0x40aa76
cmp eax, 0x46bb92a0
jle 0x40aaed
cmp eax, 0x5d07fa1c
jle 0x40abf1
cmp eax, 0x5d07fa1d
je 0x40ae35
cmp eax, 0x76530f7b
je 0x40ae77
cmp eax, 0x7983cfac
jne 0x40a953
mov eax, dword [ebp - 0x14]
shr eax, 0xe
mov ecx, eax
imul ecx, eax
imul edx, ecx, 0x5bd3
dec edx
add eax, 0xffffffef
mov dword [ebp - 0x14], eax
mov eax, 0x3e942282
cmp edx, ecx
jne 0x40af37
jmp 0x40afd0
cmp eax, 0x9e8b0306
jle 0x40ab2d
cmp eax, 0xb4122f9f
jle 0x40ac82
cmp eax, 0xb4122fa0
je 0x40ae89
cmp eax, 0xbdef6eaf
je 0x40ae95
cmp eax, 0xbe5659cb
jne 0x40a953
mov eax, dword [ebp - 0x14]
shl eax, 0x19
add eax, 0x53950000
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0x15aeb714
jmp 0x40a953
cmp eax, 0x15aeb713
jle 0x40ab69
cmp eax, 0x198ecc9e
jle 0x40accd
cmp eax, 0x244fd0dd
je 0x40aeb3
cmp eax, 0x27e595f9
jne 0x40b0f8
mov dword [ebp - 0x10], 0x802ad5a3
jmp 0x40a953
cmp eax, 0xcb21ae9b
jg 0x40ad22
cmp eax, 0xca5ed588
je 0x40aee5
cmp eax, 0xcb0f2970
jne 0x40b105
push eax
sub esp, 8
mov eax, esp
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
add eax, 9
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x10], 0xbe5659cb
jmp 0x40a953
cmp eax, 0x3c1bbca0
jg 0x40ad65
cmp eax, 0x2a390ed0
je 0x40af1e
cmp eax, 0x2a72de9c
jne 0x40a953
mov eax, dword [ebp - 0x14]
shl eax, 0xe
add eax, 0x1ac000
and eax, 0x1fffc000
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0x99b67fbc
jmp 0x40a953
cmp eax, 0x8b644bae
jg 0x40ad97
cmp eax, 0x802ad5a3
je 0x40af41
cmp eax, 0x82a9b641
jne 0x40a953
imul eax, dword [ebp - 0x14], 0xb5280
add eax, 0xaf7ec00
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x10], 0x8b644baf
jmp 0x40a953
cmp eax, 0x10c0eff7
jg 0x40adda
cmp eax, 0x7e19442
je 0x40af4d
cmp eax, 0xeffc43e
jne 0x40a953
shl esi, 5
and esi, 0xffffc00
imul esi, esi, 0xe6
or esi, 0xdb
push esi
push 0x539b
push 0x1ffb
push 0x5e9f
call fcn.0040b140
add esp, 0x10
mov dword [ebp - 0x10], 0x17b292b1
jmp 0x40a953
cmp eax, 0xd84d8ba6
je 0x40af7f
cmp eax, 0xee355f59
jne 0x40a953
push eax
sub esp, 0x88
mov eax, esp
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x10], 0xcb21ae9c
jmp 0x40a953
cmp eax, 0x46bb92a1
je 0x40af9a
cmp eax, 0x5ac41d5c
jne 0x40a953
mov eax, dword [ebp - 0x40]
mov word [eax + 0xe], 0
mov eax, dword [ebp - 0x40]
movzx ecx, word [0x46d6b4]
mov word [eax + 0xc], cx
mov ecx, dword [0x46d6b0]
mov dword [eax + 8], ecx
mov ecx, dword [0x46d6ac]
mov dword [eax + 4], ecx
mov ecx, dword [0x46d6a8]
mov dword [eax], ecx
push 4
push 0x46d6b6
push 7
push dword [ebp - 0x40]
call fcn.0040b270
add esp, 0x10
mov eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x40]
mov edx, dword [ecx + 0xc]
mov dword [eax + 0xc], edx
mov edx, dword [ecx + 8]
mov dword [eax + 8], edx
mov edx, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [eax + 4], ecx
mov dword [eax], edx
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov word [eax], 0x88
mov dword [ebp - 0x10], 0xbdef6eaf
jmp 0x40a953
cmp eax, 0x9e8b0307
je 0x40afd8
cmp eax, 0xa80953d8
jne 0x40a953
imul eax, esi, 0x1d91
shr eax, 4
imul esi, eax, 0xd1
add esi, 0x131
call fcn.0040a1c8
mov eax, 0xee355f59
cmp esi, 0xde
jl 0x40afd0
mov eax, 0xeffc43e
jmp 0x40afd0
cmp eax, 0x15aeb714
je 0x40afe4
cmp eax, 0x17b292b1
jne 0x40a953
push 8
push 0x47ac10
push 0x10
push dword [ebp - 0x38]
call fcn.0040b140
add esp, 0x10
push 0x11
push dword [ebp - 0x38]
push dword [ebp - 0x24]
call fcn.00448eb0
add esp, 0xc
push dword [ebp - 0x24]
push dword [ebp - 0x4c]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x10], 0x76530f7b
jmp 0x40a953
cmp eax, 0xcb21ae9c
je 0x40b03d
cmp eax, 0xce3864f7
jne 0x40a953
mov eax, dword [ebp - 0x1c]
mov word [eax], di
mov eax, dword [ebp - 0x1c]
mov word [eax + 2], di
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x30]
mov dword [eax + 4], ecx
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x20]
mov dword [ecx], eax
mov dword [ebp - 0x10], 0x5d07fa1d
jmp 0x40a953
cmp eax, 0x3c1bbca1
je 0x40b095
cmp eax, 0x3e942282
jne 0x40a953
lea eax, [ebp - 0x5c]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x10], 0xca5ed588
jmp 0x40a953
cmp eax, 0x8b644baf
je 0x40b0a1
cmp eax, 0x99b67fbc
jne 0x40a953
push eax
sub esp, 0xc
mov eax, esp
mov dword [ebp - 0x30], eax
sub esp, 8
mov eax, esp
mov dword [ebp - 0x18], eax
sub esp, 8
mov eax, esp
mov dword [ebp - 0x1c], eax
sub esp, 0xc
mov eax, esp
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x10], 0x27e595f9
jmp 0x40a953
cmp eax, 0x10c0eff8
je 0x40b0b6
cmp eax, 0x14912e0f
jne 0x40a953
imul esi, esi, 0x5d
shr esi, 7
mov dword [ebp - 0x10], 0x17b292b1
jmp 0x40a953
shr esi, 4
imul esi, esi, 0x6a000
add esi, 0xffd27fe8
mov dword [ebp - 0x10], 0x14912e0f
jmp 0x40a953
push eax
sub esp, 0x88
mov eax, esp
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], 0x2a72de9c
jmp 0x40a953
mov eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
mov dword [eax + 4], ecx
mov eax, dword [ebp - 0x20]
mov dword [eax + 8], 0x34
mov eax, dword [ebp - 0x50]
push dword [ebp - 0x28]
push 0
push dword [ebp - 0x20]
push ebx
push ebx
push 0x50000018
call eax
mov eax, dword [ebp - 0x28]
cmp dword [eax], 8
mov eax, 0x198ecc9f
je 0x40afd0
mov eax, 0x21397d3
jmp 0x40afd0
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x10], 0xb4122fa0
jmp 0x40a953
mov dword [ebp - 0x10], 0xee355f59
jmp 0x40a953
mov eax, dword [ebp - 0x18]
mov word [eax + 2], 0x88
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x2c]
mov dword [eax + 4], ecx
mov dword [ebp - 0x10], 0xce3864f7
jmp 0x40a953
add esi, 0x3ffff3c
shr esi, 5
lea esi, [esi + esi*4]
shl esi, 0xe
add esi, 0xff4c0000
call fcn.0040a1c8
mov eax, 0xcb0f2970
cmp esi, 0x41
jl 0x40afd0
mov eax, 0xcb21ae9c
jmp 0x40afd0
mov eax, dword [ebp - 0x14]
mov ecx, 0xffffff6b
add eax, ecx
imul ecx, eax, 0x3540
imul eax, eax
imul edx, eax, 0x85b7
dec edx
add ecx, 0xffffff04
mov dword [ebp - 0x14], ecx
mov ecx, 0xfceca297
cmp edx, eax
je 0x40af16
mov ecx, 0x3c1bbca1
mov dword [ebp - 0x10], ecx
jmp 0x40a953
shl esi, 0xd
call fcn.0040a937
mov eax, 0x99b67fbc
add esi, 0xfff36000
je 0x40afd0
mov eax, 0x9e8b0307
jmp 0x40afd0
mov dword [ebp - 0x10], 0xcb0f2970
jmp 0x40a953
mov eax, dword [ebp - 0x14]
add eax, 0xffffff97
mov ecx, eax
imul ecx, eax
imul edx, ecx, 0x7809
dec edx
shl eax, 8
and eax, 0x7fffff00
add eax, 0xffffff06
mov dword [ebp - 0x14], eax
mov eax, 0xa80953d8
cmp ecx, edx
je 0x40afd0
mov eax, 0x5ac41d5c
jmp 0x40afd0
push eax
sub esp, 0x10
mov eax, esp
mov dword [ebp - 0x24], eax
push eax
mov eax, esp
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x10], 0xfceca297
jmp 0x40a953
add esi, 0xd4
shr esi, 0x13
and esi, 0xfffffffe
push 0x5d82
push 0x2e2c
push 0x5576
push esi
call fcn.0040b270
add esp, 0x10
mov eax, 0xfc5c6eb7
cmp esi, 0xac
jb 0x40afd0
mov eax, 0x2a390ed0
mov dword [ebp - 0x10], eax
jmp 0x40a953
mov dword [ebp - 0x10], 0x7e19442
jmp 0x40a953
mov eax, dword [ebp - 0x48]
mov byte [eax], 0
mov eax, dword [ebp - 0x34]
mov cl, byte [0x47abf9]
mov byte [eax + 8], cl
mov ecx, dword [0x47abf5]
mov dword [eax + 4], ecx
mov ecx, dword [0x47abf1]
mov dword [eax], ecx
push 6
push 0x47abfa
push 9
push dword [ebp - 0x34]
call fcn.0040b140
add esp, 0x10
mov eax, dword [ebp - 0x34]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x58], edx
movzx eax, word [eax + 8]
mov word [ebp - 0x54], ax
mov dword [ebp - 0x10], 0x3e942282
jmp 0x40a953
mov eax, dword [ebp - 0x3c]
mov word [eax + 0x88], 0
mov eax, 0x88
push eax
push 0x46d610
push dword [ebp - 0x3c]
call fcn.00448eb0
add esp, 0xc
push 8
push 0x46d698
push 0x44
push dword [ebp - 0x3c]
call fcn.0040b270
add esp, 0x10
push 0x8a
push dword [ebp - 0x3c]
push dword [ebp - 0x2c]
call fcn.00448eb0
add esp, 0xc
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x10], 0x82a9b641
jmp 0x40a953
mov dword [ebp - 0x10], 0x10c0eff8
jmp 0x40a953
push eax
sub esp, 0xc
mov eax, esp
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x10], 0x7983cfac
jmp 0x40a953
push eax
sub esp, 0x10
mov eax, esp
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
mov byte [eax + 0x10], 0
mov eax, dword [ebp - 0x38]
mov ecx, dword [0x47ac0c]
mov dword [eax + 0xc], ecx
mov ecx, dword [0x47ac08]
mov dword [eax + 8], ecx
mov ecx, dword [0x47ac04]
mov dword [eax + 4], ecx
mov ecx, dword [0x47ac00]
mov dword [eax], ecx
mov dword [ebp - 0x10], 0x17b292b1
jmp 0x40a953
cmp eax, 0x198ecc9f
jne 0x40a953
jmp 0x40b11b
cmp eax, 0xc477d7bf
jne 0x40a953
mov dword [ebp - 0x44], esi
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov dword [ebp - 0x44], esi
mov eax, dword [ebp - 0x20]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x18]
mov eax, dword [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x28]
mov eax, dword [ebp - 0x24]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret