Function at 0x4654e0
Capabilities:
Terminate process

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x88
mov eax, dword [0x45a7c4]
lea ebx, [esp + 0x1c]
mov ebp, dword [esp + 0x9c]
xor eax, esp
mov dword [esp + 0x84], eax
mov dword [esp + 0x20], ebx
mov eax, dword [esp + 0x20]
lea eax, [esp + 0x18]
mov dword [esp + 0x1c], 0
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x24]
mov eax, 0xf1853917
mov dword [esp + 0x18], 0
nop dword [eax]
cmp eax, 0x8249bdb
jg 0x465680
cmp eax, 0xce3cdfdb
jle 0x4656d0
cmp eax, 0xebc20ba0
jle 0x465760
cmp eax, 0xeff60378
jg 0x465a58
cmp eax, 0xebc20ba1
je 0x465a83
cmp eax, 0xef7f907d
jne 0x465530
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x5c]
add eax, dword [ecx + 0x14]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x5c]
mov ecx, dword [0x45b4c0]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x44], eax
lea eax, [ecx - 1]
imul eax, ecx
mov edx, eax
mov esi, eax
not edx
and esi, 0xc35cf6ac
mov ecx, edx
and edx, 0xd51bd5da
and ecx, 0x3ca30952
or esi, ecx
mov ecx, eax
xor ecx, 0xfffffffe
xor esi, 0xc35cf6ac
and ecx, eax
mov edi, esi
and eax, 0x2ae42a25
and edi, ecx
xor ecx, esi
or eax, edx
or ecx, edi
mov edi, 0x8f3310c4
mov edx, ecx
and ecx, 0x3813c1fe
not edx
mov esi, edx
and esi, 0xc7ec3e01
or ecx, esi
mov esi, eax
xor eax, 0xc5081400
xor esi, 0x28000024
and eax, 0xc7ec3e01
and esi, 0x3813c1fe
or esi, eax
xor esi, ecx
mov ecx, dword [0x45b4c4]
xor edx, esi
test edx, esi
mov esi, 0xb222a8ec
setne dl
sete ah
cmp ecx, 0xa
setl al
cmp ecx, 9
setg cl
mov ch, cl
xor ch, al
and ch, cl
mov cl, ah
xor cl, al
and al, ah
and ah, ch
not ch
and ch, dl
mov edx, ecx
or al, cl
xor dl, 1
xor cl, al
or ch, ah
or al, dl
xor cl, 1
mov dl, ch
xor al, 1
xor dl, 1
or al, cl
mov cl, al
not cl
and cl, dl
or dl, al
and al, ch
or al, cl
mov ecx, eax
xor cl, dl
test al, al
mov eax, 0x8f3310c4
cmovne eax, esi
test dl, 1
cmovne eax, edi
test cl, 1
cmove eax, esi
cmp eax, 0x8249bdb
jle 0x46553b
nop
cmp eax, 0x57f269b6
jg 0x465720
cmp eax, 0x4bbc8f36
jg 0x465987
cmp eax, 0x8249bdc
je 0x465b26
cmp eax, 0x12669235
je 0x465c84
cmp eax, 0x322b2569
jne 0x465530
cmp dword [esp + 0x34], 0
mov eax, 0xebc20ba1
mov ecx, 0x61973417
jmp 0x46606c
cmp eax, 0x9a7a675a
jg 0x465941
cmp eax, 0x80aa0b9b
je 0x46622c
cmp eax, 0x8f3310c4
je 0x465cf2
cmp eax, 0x98f4db61
jne 0x465530
cmp byte [esp + 0x3f], 0
mov eax, 0xd41abd41
mov ecx, 0xe86e3f37
cmovne eax, ecx
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x54]
jmp 0x465973
cmp eax, 0x655459f1
jg 0x4659c9
cmp eax, 0x57f269b7
je 0x465d0f
cmp eax, 0x60d84b53
je 0x465eac
cmp eax, 0x61973417
jne 0x465530
cmp byte [esp + 0x3e], 0
mov eax, 0x60d84b53
mov ecx, 0x5678328d
jmp 0x465b13
cmp eax, 0xce3cdfdc
je 0x465aa4
cmp eax, 0xd41abd41
je 0x465ecd
cmp eax, 0xe86e3f37
jne 0x465530
mov eax, dword [0x45b4c0]
lea edx, [eax - 1]
imul edx, eax
mov ecx, edx
mov eax, edx
xor ecx, 0x25c268c0
and eax, 0x10048c0
and ecx, edx
not edx
and edx, 0x24c22000
or eax, edx
xor eax, 0x10048c0
mov edx, eax
and edx, ecx
xor ecx, eax
or ecx, edx
mov eax, ecx
and ecx, 0x25c268c0
not eax
and eax, 0xda3d973f
or ecx, eax
mov eax, ecx
mov edx, ecx
xor eax, 0xc61f6aca
and edx, 0xb59b4adc
and eax, ecx
not ecx
and ecx, 0x4a64b523
or edx, ecx
mov ecx, edx
xor edx, 0x1021
xor ecx, 0xb59b4adc
and edx, 0x909112b9
mov esi, ecx
and esi, 0xc61f6aca
mov edi, esi
and edi, eax
xor eax, esi
or eax, edi
mov esi, eax
and eax, 0xc61f6acb
not esi
and esi, 0x39e09534
or eax, esi
mov esi, ecx
and ecx, 1
and esi, 0x6f6eed46
or esi, edx
xor esi, 0x909112b8
or ecx, esi
mov edx, ecx
and ecx, 0x8ad487a2
not edx
and edx, 0x752b785d
or ecx, edx
mov edx, eax
and eax, 0x81a7ee86
not edx
mov esi, edx
and esi, 0x7e581179
or eax, esi
mov esi, ecx
xor ecx, 0x752b785d
xor esi, 0x80848682
or edx, ecx
and ecx, 0x7e581179
and esi, 0x81a7ee86
not edx
or esi, ecx
xor esi, eax
or edx, esi
mov eax, edx
xor eax, 0xf2e087b4
and eax, edx
or edx, 0xd1f784b
mov ecx, edx
mov esi, edx
not ecx
and esi, 0x9ddb53e3
and ecx, 0x62208414
or ecx, esi
mov esi, eax
and eax, 0x6224ac1c
not esi
or edx, esi
and esi, 0x9ddb53e3
or eax, esi
not edx
mov esi, 0x8f3310c4
xor eax, ecx
mov ecx, dword [0x45b4c4]
or edx, eax
mov eax, edx
and edx, 0xf2e087b4
not eax
and eax, 0xd1f784b
or edx, eax
sete dl
setne ah
cmp ecx, 0xa
setl al
cmp ecx, 9
mov ch, ah
setg cl
or ah, al
and al, dl
and ch, cl
or al, ch
xor al, 1
or al, cl
or cl, dl
mov edx, ecx
mov ch, al
or cl, ah
xor ch, 1
xor dl, ah
xor cl, 1
or cl, dl
mov dl, ch
and dl, al
mov ah, dl
xor dl, ch
and ah, ch
or dl, ah
mov ah, dl
xor ah, 1
and ah, cl
xor cl, 1
and dl, cl
or dl, ah
mov ah, al
and ah, cl
xor cl, al
or cl, ah
mov eax, 0xef7f907d
mov ch, cl
xor ch, dl
test cl, 1
cmovne eax, esi
test dl, 1
mov edx, 0xef7f907d
cmove eax, esi
test ch, 1
jmp 0x465c71
cmp eax, 0x9a7a675b
je 0x465aea
cmp eax, 0xacdb5eb7
je 0x465fec
cmp eax, 0xb222a8ec
jne 0x465530
mov eax, dword [esp + 0x40]
mov dword [esp + 0x14], eax
mov eax, 0xd41abd41
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x10], ecx
cmp eax, 0x8249bdb
jle 0x46553b
jmp 0x465680
cmp eax, 0x4bbc8f37
je 0x466029
cmp eax, 0x5678328d
je 0x46605d
cmp eax, 0x56b64932
jne 0x465530
push dword [esp + 0x28]
call fcn.0042c86c
add esp, 4
mov eax, 0x322b2569
cmp eax, 0x8249bdb
jle 0x46553b
jmp 0x465680
cmp eax, 0x655459f2
je 0x46607f
cmp eax, 0x69b00833
je 0x4660a0
cmp eax, 0x7693b0a4
jne 0x465530
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0x3c]
add eax, dword [esp + 0x28]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x34]
movzx eax, word [eax + 6]
mov dword [esp + 0x38], eax
mov eax, 0xf8
mov ecx, dword [esp + 0x34]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
add ecx, eax
mov eax, 0xce3cdfdc
mov dword [esp + 0xc], ecx
cmp eax, 0x8249bdb
jle 0x46553b
jmp 0x465680
cmp eax, 0xf1853917
jne 0x466219
lea eax, [esp + 0x18]
push eax
push ebx
push ebp
call fcn.00464b10
add esp, 0xc
test al, al
mov eax, 0xeff60379
mov ecx, 0x7693b0a4
jmp 0x465b13
push dword [esp + 0x30]
call fcn.0042c86c
add esp, 4
mov eax, 0x61973417
cmp eax, 0x8249bdb
jle 0x46553b
jmp 0x465680
mov eax, dword [esp + 8]
mov edx, 0x8249bdc
mov dword [esp + 0x50], eax
mov eax, dword [esp + 4]
mov dword [esp + 0x54], eax
mov eax, dword [esp]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0xc]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x50]
cmp ecx, eax
mov eax, 0x9a7a675b
cmovl eax, edx
cmp eax, 0x8249bdb
jle 0x46553b
jmp 0x465680
push dword [esp + 0x54]
push dword [esp + 0x5c]
call fcn.00463e50
add esp, 8
cmp dword [esp + 0x2c], 0
mov eax, 0x56b64932
mov ecx, 0x322b2569
sete byte [esp + 0x3e]
cmp byte [esp + 0x3e], 0
cmovne eax, ecx
cmp eax, 0x8249bdb
jle 0x46553b
jmp 0x465680
mov ecx, dword [0x45b4c0]
mov ebx, ebp
lea edi, [ecx - 1]
imul edi, ecx
mov ebp, edi
mov ecx, edi
mov eax, edi
not ebp
and ecx, 0x5c020042
xor eax, 0x5cf36152
mov edx, ebp
and eax, edi
and ebp, 0x1998a744
and edx, 0xf16110
or ecx, edx
mov edx, ecx
xor ecx, 0xa3fdffbd
xor edx, 0x18000000
mov esi, ecx
and esi, 0xe52acb7e
and edx, 0x18d12000
or edx, esi
mov esi, eax
and eax, 0x1ad53481
not esi
or ecx, esi
and esi, 0xe52acb7e
or eax, esi
not ecx
mov esi, 0x12669235
xor eax, edx
or ecx, eax
mov eax, ecx
and ecx, 0x2b6ad98b
not eax
and eax, 0xd4952674
or ecx, eax
mov edx, ecx
xor ecx, 0x88000427
xor edx, 0x61891850
and ecx, 0x9e10a4af
and edx, 0x61ef5b50
or edx, ecx
mov eax, edx
xor edx, 0x9e10a4af
mov ecx, edx
xor eax, 0x1880340
or edx, edi
and edi, 0xe66758bb
and ecx, 0xe66758bb
and eax, 0x1998a744
or ebp, edi
not edx
or eax, ecx
mov ecx, dword [0x45b4c4]
xor ebp, eax
or edx, ebp
mov ebp, ebx
lea ebx, [esp + 0x1c]
mov eax, edx
and edx, 0xe45f6d42
not eax
and eax, 0x1ba092bd
or edx, eax
xor edx, 0xe45f6d42
sete dl
setne ah
cmp ecx, 0xa
setl al
cmp ecx, 9
setg cl
mov ch, al
xor al, dl
and ah, cl
and ch, dl
xor al, 1
or ch, ah
xor ch, 1
or ch, cl
mov cl, ch
mov dl, ch
xor cl, 1
and dl, cl
mov ah, cl
xor dl, 1
xor ah, dl
or dl, cl
mov cl, ch
xor dl, 1
and cl, al
or dl, ah
xor dl, al
xor al, ch
or al, cl
mov ecx, eax
xor cl, dl
test al, 1
mov eax, 0x57f269b7
cmovne eax, esi
test dl, 1
mov edx, 0x57f269b7
cmove eax, esi
test cl, 1
cmove eax, edx
cmp eax, 0x8249bdb
jle 0x46553b
jmp 0x465680
mov esi, dword [esp + 0x5c]
sub esp, 4
movzx eax, byte [esp + 0x6c]
lea edi, [esp + 0x70]
mov ecx, edi
mov byte [esp], al
call fcn.004084d0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0xf
mov byte [esp + 0x6c], 0
push esi
call fcn.00439180
add esp, 4
mov ecx, edi
push eax
push esi
call fcn.00408ad0
push 0x235
push edi
call fcn.004601b0
add esp, 8
mov ecx, edi
call fcn.0040aad0
mov eax, 0x57f269b7
cmp eax, 0x8249bdb
jle 0x46553b
jmp 0x465680
mov eax, dword [esp + 0x5c]
mov eax, dword [esp + 0x5c]
mov eax, 0xef7f907d
cmp eax, 0x8249bdb
jle 0x46553b
jmp 0x465680
mov esi, dword [esp + 0x5c]
sub esp, 4
movzx eax, byte [esp + 0x6c]
lea edi, [esp + 0x70]
mov ecx, edi
mov byte [esp], al
call fcn.004084d0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0xf
mov byte [esp + 0x6c], 0
push esi
call fcn.00439180
add esp, 4
mov ecx, edi
push eax
push esi
call fcn.00408ad0
push 0x235
push edi
call fcn.004601b0
add esp, 8
cmp eax, 0x9635f8b5
mov ecx, edi
sete byte [esp + 0x3f]
call fcn.0040aad0
mov ecx, dword [0x45b4c0]
mov eax, dword [0x45b4c4]
lea edx, [ecx - 1]
imul edx, ecx
mov esi, edx
xor esi, 0x1c7678fe
and esi, edx
not edx
and edx, 0x1c7678fe
mov ecx, edx
and ecx, esi
xor esi, edx
or esi, ecx
mov ecx, esi
and esi, 0xcbfdc743
not ecx
and ecx, 0x340238bc
or esi, ecx
mov ecx, esi
mov edx, esi
xor esi, 0x28744042
xor ecx, 0xd78bbfbd
xor edx, 0xd78bbfbc
and esi, 0xfffffffe
and edx, ecx
and ecx, 1
or ecx, esi
mov esi, edx
and esi, ecx
xor ecx, edx
or ecx, esi
mov edx, ecx
or ecx, 0xc4b86fff
not edx
mov esi, ecx
and ecx, 0xa6a32d5d
or edx, 0x3b479000
not esi
mov edi, edx
and esi, 0x19449000
and edx, 0xa6a32d5d
not edi
or esi, ecx
and edi, 0x401842a2
or edi, edx
xor edi, esi
mov esi, 0x12669235
mov ecx, edi
and edi, 0xb379b282
not ecx
and ecx, 0x4c864d7d
or edi, ecx
xor edi, 0x883e2282
mov edi, 0x98f4db61
setne cl
sete ch
cmp eax, 0xa
setl dl
cmp eax, 9
setg al
or cl, dl
xor dl, ch
mov ah, al
mov dh, cl
xor ah, ch
or ch, al
and ah, al
or cl, ch
xor dh, ch
mov al, ah
xor ah, dl
xor dl, 1
xor cl, 1
xor al, 1
or cl, dh
or dl, al
xor dl, 1
or dl, ah
mov eax, edx
mov ah, dl
xor al, 1
and al, dl
xor al, 1
xor ah, al
or al, dl
xor al, 1
or al, ah
xor al, cl
mov edx, eax
xor dl, 1
and cl, dl
xor dl, cl
test dl, 1
cmovne edi, esi
test al, 1
mov esi, 0x98f4db61
mov eax, edi
cmovne eax, esi
test cl, cl
cmove eax, edi
cmp eax, 0x8249bdb
jle 0x46553b
jmp 0x465680
push dword [esp + 0x28]
call fcn.0042c86c
add esp, 4
mov eax, 0x5678328d
cmp eax, 0x8249bdb
jle 0x46553b
jmp 0x465680
mov ecx, dword [0x45b4c0]
lea eax, [ecx - 1]
imul eax, ecx
mov ecx, eax
not ecx
and eax, ecx
mov edx, ecx
and edx, eax
xor eax, ecx
or eax, edx
mov edx, eax
mov ecx, eax
not edx
xor ecx, 0x6e911195
mov esi, edx
and ecx, eax
and edx, 1
xor eax, 0xfffffffe
and esi, 0x6e911195
or eax, edx
mov edi, esi
mov edx, eax
and eax, 0x27613800
and edi, ecx
xor ecx, esi
not edx
or ecx, edi
and edx, 0xd89ec7ff
mov edi, dword [esp + 0x10]
mov esi, ecx
and ecx, 0x6e911194
or eax, edx
not esi
and esi, 0x916eee6b
or ecx, esi
mov dword [esp + 0x60], edi
mov edx, ecx
and ecx, 0xd856cdd5
not edx
mov esi, edx
and esi, 0x27a9322a
or ecx, esi
mov esi, eax
xor eax, 0xd89ec7ff
xor esi, 0x400800
or edx, eax
and eax, 0x27a9322a
and esi, 0xd856cdd5
not edx
or esi, eax
xor esi, ecx
or edx, esi
mov esi, 0x69b00833
mov eax, edx
not eax
mov ecx, eax
and eax, edx
and edx, 0x9f7a2eb5
and ecx, 0x6085d14a
or edx, ecx
xor edx, 0x9f7a2eb5
mov ecx, edx
xor edx, eax
and ecx, eax
or edx, ecx
setne al
cmp dword [0x45b4c4], 9
setg cl
mov edx, ecx
xor cl, al
and dl, al
mov eax, 0xacdb5eb7
or dl, cl
xor dl, 1
xor cl, dl
mov ch, cl
xor ch, 1
and dl, ch
xor ch, dl
test cl, cl
cmovne eax, esi
test dl, dl
mov edx, 0xacdb5eb7
cmove eax, edx
mov edx, dword [esp + 0x14]
test ch, 1
cmove eax, esi
mov dword [esp + 0x64], edx
cmp eax, 0x8249bdb
jle 0x46553b
jmp 0x465680
mov eax, dword [esp + 0x5c]
mov eax, dword [esp + 0x50]
mov eax, dword [esp + 0x50]
mov eax, dword [esp + 0x50]
mov eax, dword [esp + 0x50]
mov eax, dword [esp + 0x50]
mov eax, dword [esp + 0x50]
mov eax, dword [esp + 0x50]
mov eax, dword [esp + 0x50]
mov eax, dword [esp + 0x50]
mov eax, 0x69b00833
cmp eax, 0x8249bdb
jle 0x46553b
jmp 0x465680
mov eax, dword [esp + 0x48]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x64]
mov dword [esp], eax
mov eax, 0xce3cdfdc
mov ecx, dword [esp + 0x60]
mov dword [esp + 4], ecx
cmp eax, 0x8249bdb
jle 0x46553b
jmp 0x465680
cmp dword [esp + 0x58], 0
mov eax, 0x655459f2
mov ecx, 0x80aa0b9b
cmove eax, ecx
cmp eax, 0x8249bdb
jle 0x46553b
jmp 0x465680
push dword [esp + 0x58]
call fcn.0042c86c
add esp, 4
mov eax, 0x80aa0b9b
cmp eax, 0x8249bdb
jle 0x46553b
jmp 0x465680
mov eax, dword [esp + 0x5c]
add eax, 0x28
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x50]
mov ecx, dword [0x45b4c0]
lea edx, [ecx - 1]
inc eax
imul edx, ecx
mov dword [esp + 0x4c], eax
mov eax, dword [0x45b4c4]
mov esi, edx
and edx, 0x83be7adf
not esi
mov ecx, esi
or esi, 0x790e24c4
and ecx, 0x7c418520
or edx, ecx
mov ecx, esi
and esi, 0x537fdfa0
mov edi, edx
xor edx, 0x50000400
not ecx
xor edi, 0x2044
or edx, 0x271db20
and ecx, 0x8480001b
and edx, 0x537fdfa0
and edi, 0x28002044
or ecx, esi
or edi, edx
xor ecx, edi
mov edx, ecx
and ecx, 0xf9f5f234
not edx
and edx, 0x60a0dcb
or ecx, edx
mov edx, ecx
xor ecx, 0x7f04290e
xor edx, 0x80fbd6f0
and ecx, 0xfffffffe
mov esi, edx
and edx, 1
and esi, 0xfffffffe
or edx, ecx
mov ecx, esi
and ecx, edx
xor edx, esi
or edx, ecx
mov ecx, edx
xor ecx, 0xdcc210b2
and ecx, edx
not edx
and edx, 0xdcc210b2
mov esi, edx
and esi, ecx
xor ecx, edx
or ecx, esi
mov esi, 0x4bbc8f37
mov edx, ecx
and ecx, 0xe51ae7b6
not edx
and edx, 0x1ae51849
or ecx, edx
xor ecx, 0x39d8f704
sete cl
setne dl
cmp eax, 0xa
setl ch
cmp eax, 9
mov dh, cl
setg al
mov ah, al
xor ah, ch
xor ch, cl
and ah, al
xor cl, ah
or dh, ah
not cl
and cl, ah
mov ah, dh
xor cl, 1
xor ah, cl
or cl, dh
xor cl, 1
or cl, ah
mov ah, dl
xor ah, al
or al, dl
mov dh, cl
xor al, 1
mov dl, ah
xor dh, 1
or al, ch
xor al, 1
and dl, al
xor al, ah
mov ah, cl
and ah, dh
or al, dl
mov ch, ah
xor ah, cl
mov cl, dh
xor ch, 1
and cl, al
or ch, dh
xor dh, al
xor ch, 1
or dh, cl
or ch, ah
xor ch, al
mov al, ch
xor al, dh
not al
test al, 1
mov eax, 0xacdb5eb7
cmovne esi, eax
test dh, 1
mov eax, 0x4bbc8f37
cmovne eax, esi
test ch, 1
cmovne eax, esi
cmp eax, 0x8249bdb
jle 0x46553b
jmp 0x465680
cmp eax, 0xeff60379
jne 0x465530
push 0xffffffffffffffff
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov eax, dword [esp + 0x24]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x84]
xor ecx, esp
call fcn.0042c8b1
add esp, 0x88
pop esi
pop edi
pop ebx
pop ebp
ret