Function at 0x10028dbe
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x10056347
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xe0
cmp byte [ebp + 0x14], 0
push ebx
push esi
push edi
mov byte [esp + 0x3c], cl
je 0x100295a0
cmp byte [ebp + 0x18], 0
je 0x10029596
mov edi, dword [ebp + 8]
mov eax, 0x752bf390
mov ebx, dword [ebp + 0x10]
mov dword [esp + 0x38], edi
mov dword [esp + 0x48], ebx
mov dword [esp + 0x18], 0xfffffffe
mov dword [esp + 0x1c], 0xfffffff8
mov dword [esp + 0x9c], eax
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], eax
mov dword [esp + 0x28], 0xf4d4e209
mov dword [esp + 0x18], 0
cmp dword [esp + 0x18], 0xfffffff2
jle 0x10028f8b
mov dword [esp + 0x14], 0
jmp 0x10028e71
mov eax, dword [esp + 0x14]
mov dword [esp + eax*4 + 0xbc], 1
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 2
jl 0x10028e5e
mov dword [esp + 0x14], 0
jmp 0x10028e92
mov eax, dword [esp + 0x14]
mov dword [esp + eax*4 + 0x4c], 0x5d1cb6a7
inc dword [esp + 0x14]
cmp dword [esp + 0x14], 1
jl 0x10028e82
lea eax, [esp + 0x2f]
mov byte [esp + 0x2f], 0
push 0
push eax
mov edx, 0x37d4
mov ecx, 0x2362
call fcn.10029b3a
mov esi, dword [esp + 0x20]
mov dword [esp + 0xc4], esi
mov eax, dword [esp + 0x20]
sub eax, dword [esp + 0x20]
pop ecx
pop ecx
xor ecx, ecx
cmp eax, 0xd549
mov eax, 0xfff9
setle cl
cmp eax, ecx
sbb eax, eax
xor edx, edx
neg eax
add eax, dword [esp + 0x4c]
cmp eax, 0x13f5
mov eax, dword [esp + 0x18]
setl dl
xor ecx, ecx
cmp edx, eax
mov eax, dword [esp + 0x4c]
setg cl
xor edx, edx
cmp esi, ecx
setle dl
sub edx, 0xcaea0a9f
neg edx
sbb edx, edx
xor ecx, ecx
inc edx
cmp edx, eax
setle cl
xor eax, eax
cmp ecx, 1
setl al
mov dword [esp + 0x1c], eax
cmp dword [esp + 0x1c], 0xfffc
jne 0x10028f35
cmp dword [esp + 0x1c], 0
jne 0x10028f35
xor edx, edx
jmp 0x10028f38
xor edx, edx
inc edx
mov eax, dword [esp + 0x18]
xor ecx, ecx
cmp eax, edx
mov eax, dword [esp + 0x18]
setne cl
xor ebx, ebx
cmp ecx, eax
mov eax, dword [esp + 0x18]
setle bl
xor edx, edx
sub ebx, 8
cmp ebx, eax
mov eax, dword [esp + 0xa0]
setg dl
xor ecx, ecx
cmp edx, eax
setge cl
xor eax, eax
cmp ecx, 0xe446df3
setl al
mov dword [esp + 0x28], eax
dec dword [esp + 0x18]
cmp dword [esp + 0x18], 0xfffffff2
jg 0x10028e54
mov ebx, dword [ebp + 0x10]
mov dword [esp + 0x18], 0
jmp 0x10028fa7
mov byte [esp + 0x26], 0
lea ecx, [esp + 0x26]
call fcn.1002975d
dec dword [esp + 0x18]
cmp dword [esp + 0x18], 0xfffffff4
jne 0x10028f95
and dword [esp + 0x7c], 0
xor eax, eax
mov dword [esp + 0x80], 7
mov word [esp + 0x6c], ax
and dword [esp + 0xf4], eax
cmp ebx, edi
ja 0x10028ff7
mov ecx, dword [ebp + 0xc]
lea eax, [esp + 0x6c]
cmp ecx, eax
je 0x10028fe5
push 0xffffffffffffffff
push 0
push eax
call fcn.1000f21f
push 0
push 1
lea ecx, [esp + 0x74]
call fcn.1000f361
jmp 0x100295b8
xor edx, edx
inc edx
xor ebx, ebx
mov dword [esp + 0x20], edx
mov dword [esp + 0x1c], 0x495e0e2b
mov dword [esp + 0x10], 0xffffffff
push 0xfffffffffffffff7
pop eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x10], 0x7682c5a4
mov dword [esp + 0x10], ebx
mov dword [esp + 0x10], ebx
jmp 0x10029054
mov eax, dword [esp + 0x10]
mov dword [esp + eax*4 + 0xac], 0x6e4944c1
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 2
jl 0x10029041
mov dword [esp + 0x28], 0x3282
cmp dword [esp + 0x28], 0x3417
jle 0x100290e8
mov esi, ebx
mov dword [esp + 0x20], ebx
mov edi, ebx
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], 0x2ae0
mov ecx, ebx
mov eax, esi
shl eax, cl
lea ecx, [esp + 0xd0]
cdq
push edx
push eax
call fcn.10001ac1
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x100290a0
mov eax, dword [eax]
push eax
call fcn.1003d266
pop ecx
push 0
push 1
lea ecx, [esp + 0xd8]
call fcn.1000217e
inc ebx
cmp ebx, 0x6e02
jl 0x10029081
add esi, edi
dec dword [esp + 0x10]
push 0
pop ebx
jne 0x10029081
mov esi, dword [esp + 0x20]
inc edi
cmp edi, 0x2711
jl 0x10029075
inc esi
mov dword [esp + 0x20], esi
cmp esi, 0x1be0
jl 0x10029073
xor edx, edx
inc edx
push 9
pop esi
mov dword [esp + 0x20], esi
cmp dword [esp + 0x20], 0x17
jg 0x1002925c
push 4
pop edi
mov dword [esp + 0x18], 0x29000d4e
mov dword [esp + 0x10], 7
mov dword [esp + 0x34], edx
mov dword [esp + 0x18], 0xffffffef
jmp 0x10029242
mov dword [esp + 0x14], 0xc588e1b6
mov dword [esp + 0x10], ebx
jmp 0x1002913b
mov eax, dword [esp + 0x10]
mov dword [esp + eax*4 + 0x84], esi
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 2
jl 0x1002912c
mov dword [esp + 0x14], ebx
jmp 0x100291cc
mov dword [esp + 0x10], 0xf21009d4
mov dword [esp + 0x10], edx
cmp dword [esp + 0x10], ebx
jl 0x10029186
push 0x71b4
push ecx
mov byte [esp + 0x2c], bl
lea ecx, [esp + 0x2c]
push 0x7483
mov edx, 0x3cf3
call fcn.10029e9d
add esp, 0xc
dec dword [esp + 0x10]
jns 0x1002915d
xor edx, edx
inc edx
cmp dword [esp + 0x20], ebx
je 0x10029190
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x84]
push 0xfffffffffffffff8
pop ecx
sub ecx, eax
mov eax, dword [esp + 0x10]
sub ecx, 0x23cc
neg ecx
sbb ecx, ecx
inc ecx
add eax, ecx
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x14]
mov eax, dword [esp + eax*4 + 0x84]
sub eax, dword [esp + 0x1c]
mov dword [esp + 0x10], eax
inc dword [esp + 0x14]
cmp dword [esp + 0x14], edx
jle 0x1002914b
mov eax, dword [esp + 0x18]
xor ecx, ecx
mov dword [esp + 0x10], eax
mov dword [esp + 0x94], edi
mov eax, dword [esp + 0x20]
add eax, 6
cmp eax, edi
setg cl
imul ecx, dword [esp + 0x14]
cmp ecx, dword [esp + 0x18]
jg 0x10029206
mov eax, edx
cmp dword [esp + 0x14], ebx
jne 0x10029208
mov eax, ebx
mov dword [esp + 0xac], eax
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x1c]
mov eax, dword [esp + 0x10]
mov eax, dword [esp + 0x8c]
mov eax, dword [esp + 0x14]
mov eax, dword [esp + 0x34]
mov dword [esp + 0x1c], edx
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x10], eax
inc dword [esp + 0x18]
cmp dword [esp + 0x18], 0xfffffffd
jle 0x1002911e
inc dword [esp + 0x20]
cmp dword [esp + 0x20], 0x17
jle 0x100290fd
cmp dword [esp + 0x28], 0x2ed6
jge 0x10029271
push str.staslspoa_ymlqgl_kwcrrpbw_lynrcy_bmsc_bxujdo_ogkxpt_yajqrry
call fcn.1003d266
pop ecx
lea eax, [esp + 0x6c]
mov dword [esp + 0xf4], ebx
push eax
push 0x2af0
lea eax, [esp + 0x40]
xor dl, dl
push eax
lea eax, [esp + 0x54]
mov ecx, 0x791c
push eax
push 0x7d15
call fcn.1002bd01
add esp, 0x14
mov dword [esp + 0x5c], 0xffffffff
mov dword [esp + 0x60], 0xffffffff
mov dword [esp + 0x64], 0xffffffff
mov dword [esp + 0x68], 0xffffffff
push 3
mov dword [esp + 0x20], ebx
pop ecx
jmp 0x100292d8
mov eax, dword [esp + 0x1c]
mov dword [esp + eax*4 + 0xc4], ecx
inc dword [esp + 0x1c]
cmp dword [esp + 0x1c], ecx
jl 0x100292c9
mov dword [esp + 0x5c], 0xffffffff
jmp 0x10029312
mov dword [esp + 0x10], 0x485bf25c
mov dword [esp + 0x10], ebx
jmp 0x10029307
mov eax, dword [esp + 0x10]
cmp dword [esp + eax*4 + 0xc4], ebx
jne 0x1002930e
inc dword [esp + 0x10]
cmp dword [esp + 0x10], 2
jle 0x100292f6
dec dword [esp + 0x5c]
cmp dword [esp + 0x5c], 0xfffffff1
jge 0x100292e8
mov dword [esp + 0x34], 0x1c53
cmp dword [esp + 0x34], 0x805
jge 0x100294ef
push 0x1006f318
push ecx
push 0x1006f278
mov ecx, 0x1006e158
call fcn.1002fa66
pop ecx
mov ecx, eax
call fcn.1002fa66
mov edi, dword [0x1006f27c]
mov eax, dword [0x1006f31c]
mov esi, dword [0x1006f278]
cmp eax, edi
jl 0x10029391
jg 0x1002936d
mov ebx, dword [0x1006f318]
cmp ebx, esi
jb 0x10029397
push edi
push esi
mov ecx, 0x1006e038
call fcn.10001e16
push eax
call fcn.10011a6e
mov edi, dword [0x1006f27c]
mov esi, dword [0x1006f278]
mov eax, dword [0x1006f31c]
pop ecx
mov ebx, dword [0x1006f318]
sub esi, ebx
xorps xmm0, xmm0
movlpd qword [esp + 0x40], xmm0
mov ebx, 0x540be400
sbb edi, eax
movlpd qword [esp + 0x50], xmm0
mov eax, dword [esp + 0x44]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x54]
push 2
pop edx
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x50]
mov dword [0x1006f278], esi
mov dword [0x1006f27c], edi
mov dword [esp + 0x18], edx
mov dword [esp + 0x14], eax
mov ecx, ebx
add ecx, dword [esp + 0x20]
push 0
adc edx, dword [esp + 0x14]
push 2
push edx
push ecx
call fcn.100554b0
mov ecx, edx
mov dword [esp + 0x34], eax
mov edx, eax
mov dword [esp + 0x1c], ecx
add edx, 1
mov dword [esp + 0x50], ecx
push ecx
adc dword [esp + 0x20], 0
push eax
push dword [esp + 0x24]
mov dword [esp + 0x4c], edx
push edx
call fcn.10042a10
push 0
push 2
push edx
push eax
call fcn.100554b0
cmp edi, edx
jg 0x10029454
jl 0x10029434
cmp esi, eax
ja 0x10029454
mov ebx, dword [esp + 0x34]
mov ecx, ebx
mov edx, dword [esp + 0x50]
sub ebx, 1
mov eax, edx
mov dword [esp + 0x14], ecx
sbb edx, 0
mov dword [esp + 0x28], eax
mov dword [esp + 0x18], edx
jmp 0x10029470
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x28]
cmp dword [esp + 0x10], edx
jl 0x100293e2
jg 0x10029486
cmp dword [esp + 0x20], ebx
jbe 0x100293e2
add ecx, dword [0x1006f318]
adc eax, dword [0x1006f31c]
push eax
push ecx
mov ecx, 0x1006e038
call fcn.10001e16
push eax
call fcn.10011a6e
pop ecx
xor ebx, ebx
jmp 0x100294ef
push ecx
mov dword [esp + 0x44], ebx
mov dl, 1
mov ecx, 0x5fd2
call fcn.10028d34
mov byte [esp + 0x29], bl
cmp byte [esp + 0x29], 0
pop ecx
je 0x100294d2
xor dl, dl
mov ecx, 0x4dcf
call fcn.1002ab4d
lea eax, [esp + 0x38]
mov edx, 0x395c
push eax
lea eax, [esp + 0x70]
push eax
push ecx
mov ecx, 0x57fb
call fcn.10029714
add esp, 0xc
mov eax, dword [esp + 0x38]
cmp eax, dword [esp + 0x48]
jb 0x100294a9
push 0xfffffffffffffffa
pop esi
xor ecx, ecx
mov dword [esp + 0x30], esi
mov dword [esp + 0x14], ebx
inc ecx
jmp 0x1002951c
mov eax, dword [esp + 0x14]
mov dword [esp + eax*4 + 0xb8], 0xf37d45db
inc dword [esp + 0x14]
cmp dword [esp + 0x14], ecx
jl 0x10029509
mov dword [esp + 0x14], ebx
jmp 0x1002953b
mov eax, dword [esp + 0x14]
mov dword [esp + eax*4 + 0xb4], 0xa07e4fc2
inc dword [esp + 0x14]
cmp dword [esp + 0x14], ecx
jl 0x10029528
mov dword [esp + 0x30], 2
jmp 0x1002956d
mov dword [esp + 0x40], ecx
lea edx, [esp + 0x27]
mov byte [esp + 0x27], bl
push 0x250b
call fcn.1002b8bb
mov eax, dword [esp + 0x44]
dec dword [esp + 0x34]
pop ecx
push 1
pop ecx
cmp dword [esp + 0x30], esi
je 0x1002954b
lea edx, [esp + 0x30]
call fcn.1002ab9e
mov ecx, dword [ebp + 0xc]
lea eax, [esp + 0x6c]
cmp ecx, eax
je 0x10029590
push 0xffffffffffffffff
push ebx
push eax
call fcn.1000f21f
push ebx
jmp 0x10028fe7
mov eax, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
mov dword [eax], ecx
jmp 0x100295b8
test cl, cl
je 0x100295b3
push 0x1ade
push 0
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
jmp 0x100295b8
mov eax, dword [ebp + 0x20]
mov dword [eax], edx
mov ecx, dword [esp + 0xec]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret