Function at 0x85e1f3
Capabilities:
Resolve function by parsing pe exports
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x8c
push ebx
mov ebx, ecx
mov dword [esp + 0x48], edx
xor ecx, ecx
mov dword [esp + 0x20], ebx
push esi
push edi
mov eax, dword [ebx]
mov dword [esp + 0x24], ecx
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x40], ecx
mov dword [esp + 0x38], ecx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x58], ecx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x48], ecx
mov dword [esp + 0x64], ecx
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x3c], eax
cmp dword [ebx + 0x24], ecx
jne 0x85e9a8
cmp byte [eax + 0x49], cl
jne 0x85e9a8
mov ecx, ebx
call fcn.0085e0a2
mov edi, eax
mov dword [esp + 0x18], edi
test edi, edi
je 0x85e9a8
push 0
push 0
push 0x6e
mov edx, edi
mov ecx, ebx
call fcn.0086ed23
mov esi, eax
add esp, 0xc
mov eax, dword [edi + 0xc]
mov dword [esp + 0x70], esi
mov dword [esp + 0x54], eax
test esi, esi
jne 0x85e2a5
push esi
push esi
mov edx, edi
mov ecx, ebx
call fcn.00861a43
pop ecx
pop ecx
test eax, eax
jne 0x85e2a5
and dword [esp + 0x10], eax
jmp 0x85e2ad
mov dword [esp + 0x10], 1
mov edx, edi
mov ecx, ebx
call fcn.0085b52a
test eax, eax
jne 0x85e9a8
test esi, esi
mov edx, edi
mov ecx, ebx
setne al
push eax
call fcn.0085e0df
pop ecx
test eax, eax
jne 0x85e9a8
mov esi, dword [esp + 0x3c]
mov ecx, esi
mov edx, dword [edi + 0x48]
call fcn.00867d8e
mov ecx, eax
mov dword [esp + 0x20], eax
mov eax, dword [esi + 0x10]
add ecx, ecx
push dword [eax + ecx*8]
mov ecx, ebx
push 0
push dword [edi]
push 9
pop edx
call fcn.0085944e
add esp, 0xc
mov dword [esp + 0x2c], eax
cmp eax, 1
je 0x85e9a8
mov ecx, dword [esp + 0x50]
xor edx, edx
mov eax, dword [ebx + 0x28]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x44], edx
mov dword [ecx + 0x34], eax
inc dword [ebx + 0x28]
mov eax, dword [edi + 8]
mov ecx, dword [ebx + 0x28]
test eax, eax
je 0x85e341
inc ecx
inc edx
mov dword [ebx + 0x28], ecx
mov eax, dword [eax + 0x14]
test eax, eax
jne 0x85e331
mov dword [esp + 0x44], edx
cmp dword [esp + 0x54], 0
je 0x85e358
push dword [edi]
lea edx, [esp + 0x78]
mov ecx, ebx
call fcn.008594ca
add esp, 4
mov ecx, ebx
call fcn.00869fa5
mov esi, eax
mov dword [esp + 0x30], esi
test esi, esi
je 0x85e9a8
cmp byte [ebx + 0x12], 0
jne 0x85e37a
mov ecx, esi
call fcn.00847f26
push dword [esp + 0x20]
mov edx, dword [esp + 0x14]
mov ecx, ebx
call fcn.0085d4cb
cmp dword [esp + 0x58], 0
pop ecx
je 0x85e3b4
push dword [esp + 0x1c]
mov edx, edi
mov ecx, ebx
push 0
push 0
push dword [ebp + 8]
call fcn.0085e140
mov eax, dword [esp + 0x2c]
add esp, 0x10
mov dword [esp + 0x5c], eax
mov dword [esp + 0x24], eax
mov edx, dword [ebp + 8]
lea edi, [esp + 0x7c]
push 7
xor eax, eax
pop ecx
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x50]
lea ecx, [esp + 0x7c]
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x80], eax
call fcn.008521bb
test eax, eax
jne 0x85e9a8
mov eax, dword [esp + 0x3c]
test byte [eax + 0x1c], 0x80
je 0x85e411
cmp byte [ebx + 0x12], 0
jne 0x85e411
cmp dword [ebx + 0x7c], 0
jne 0x85e411
inc dword [ebx + 0x2c]
mov ecx, esi
mov eax, dword [ebx + 0x2c]
push eax
push 0
push 0x43
pop edx
mov dword [esp + 0x54], eax
call fcn.00844d77
pop ecx
pop ecx
cmp dword [esp + 0x2c], 0
mov edi, dword [esp + 0x18]
jne 0x85e4a5
cmp dword [ebp + 8], 0
jne 0x85e4a5
cmp dword [esp + 0x10], 0
jne 0x85e4a5
cmp dword [edi + 0x38], 0
jne 0x85e4a5
push dword [edi]
mov edx, dword [esp + 0x24]
mov ecx, ebx
push 1
push dword [edi + 0x1c]
call fcn.008594f7
add esp, 0xc
test byte [edi + 0x24], 0x20
jne 0x85e474
mov ecx, dword [esp + 0x4c]
or eax, 0xffffffff
push eax
push dword [edi]
test ecx, ecx
mov edx, 0x87
cmovne eax, ecx
mov ecx, esi
push eax
push dword [esp + 0x2c]
push dword [edi + 0x1c]
call fcn.00844e3d
add esp, 0x14
mov edi, dword [edi + 8]
test edi, edi
je 0x85e961
mov ebx, dword [esp + 0x20]
push ebx
push dword [edi + 0x2c]
mov edx, 0x87
mov ecx, esi
call fcn.00844d77
mov edi, dword [edi + 0x14]
pop ecx
pop ecx
test edi, edi
jne 0x85e483
mov ebx, dword [esp + 0x28]
jmp 0x85e961
test byte [esp + 0x94], 0x40
push 1
pop ecx
mov eax, ecx
cmove eax, dword [esp + 0x10]
neg eax
sbb eax, eax
and eax, 0xfffffff8
add eax, 0x41c
test byte [edi + 0x24], 0x20
movzx eax, ax
mov dword [esp + 0x2c], eax
jne 0x85e4f4
and dword [esp + 0x18], 0
inc dword [ebx + 0x2c]
mov eax, dword [ebx + 0x2c]
push eax
push 0
mov dword [esp + 0x28], ecx
mov ecx, esi
push 0x46
pop edx
mov dword [esp + 0x60], eax
call fcn.00844d77
pop ecx
pop ecx
jmp 0x85e543
mov ecx, edi
call fcn.00859f5b
mov dword [esp + 0x18], eax
movzx ecx, word [eax + 0x32]
mov eax, dword [ebx + 0x2c]
mov dword [esp + 0x20], ecx
movsx ecx, cx
push ecx
lea edx, [eax + 1]
add eax, ecx
mov dword [esp + 0x3c], edx
mov ecx, esi
mov edx, dword [ebx + 0x28]
push edx
mov dword [ebx + 0x2c], eax
mov dword [esp + 0x3c], edx
lea eax, [edx + 1]
push 0x6e
pop edx
mov dword [ebx + 0x28], eax
call fcn.00844d77
mov edx, dword [esp + 0x20]
pop ecx
pop ecx
mov ecx, ebx
mov dword [esp + 0x64], eax
call fcn.0084554f
mov eax, dword [esp + 0x1c]
mov ecx, ebx
mov edx, dword [esp + 0x50]
inc eax
push eax
push dword [esp + 0x30]
push 0
push 0
push dword [ebp + 8]
call fcn.00879734
add esp, 0x14
mov dword [esp + 0x2c], eax
test eax, eax
je 0x85e9a8
lea edx, [esp + 0x68]
mov ecx, eax
call fcn.00875975
mov dword [esp + 0x14], eax
cmp eax, 1
je 0x85e589
mov ecx, ebx
call fcn.0085d4f8
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x85e5a0
push 1
push eax
push 0x50
pop edx
mov ecx, esi
call fcn.00844d77
pop ecx
pop ecx
mov ecx, dword [esp + 0x18]
test ecx, ecx
je 0x85e5f7
mov eax, dword [esp + 0x20]
and dword [esp + 0x10], 0
cwde
test eax, eax
jle 0x85e5ed
mov ebx, dword [esp + 0x10]
mov eax, dword [esp + 0x38]
mov edx, edi
add eax, ebx
push eax
mov eax, dword [ecx + 4]
mov ecx, esi
movsx eax, word [eax + ebx*2]
push eax
push dword [esp + 0x24]
call fcn.00855062
mov ecx, dword [esp + 0x2c]
add esp, 0xc
movsx eax, cx
inc ebx
mov ecx, dword [esp + 0x18]
cmp ebx, eax
jl 0x85e5ba
mov ebx, dword [esp + 0x28]
mov eax, dword [esp + 0x38]
mov dword [esp + 0x10], eax
jmp 0x85e61c
mov eax, dword [ebx + 0x2c]
mov edx, edi
push 0
inc eax
mov ecx, ebx
push eax
push dword [esp + 0x24]
push 0xffffffffffffffff
call fcn.00855107
add esp, 0x10
mov dword [esp + 0x10], eax
cmp eax, dword [ebx + 0x2c]
jle 0x85e61c
mov dword [ebx + 0x2c], eax
cmp dword [esp + 0x14], 0
je 0x85e6ba
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x3c]
movzx eax, ax
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x44]
add eax, 2
cdq
push edx
push eax
call fcn.0082db2c
pop ecx
pop ecx
mov ecx, eax
mov dword [esp + 0x40], ecx
test ecx, ecx
jne 0x85e65f
mov ecx, dword [esp + 0x2c]
call fcn.0087a027
jmp 0x85e9a8
mov eax, dword [esp + 0x44]
inc eax
push eax
push 1
push ecx
call fcn.008856c0
mov eax, dword [esp + 0x50]
add esp, 0xc
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x1c]
mov byte [eax + edx + 1], 0
mov eax, dword [esp + 0x68]
test eax, eax
js 0x85e68f
sub eax, ecx
mov byte [eax + edx], 0
cmp dword [esp + 0x6c], 0
jl 0x85e6a0
mov eax, dword [esp + 0x6c]
sub eax, ecx
mov byte [eax + edx], 0
mov eax, dword [esp + 0x64]
test eax, eax
je 0x85e7e5
mov edx, eax
mov ecx, esi
call fcn.008453e3
jmp 0x85e7e5
mov ecx, dword [esp + 0x18]
test ecx, ecx
je 0x85e7ca
inc dword [ebx + 0x2c]
mov edx, ecx
mov eax, dword [ebx + 0x2c]
and dword [esp + 0x28], 0
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x20]
movsx esi, ax
push esi
push ecx
mov ecx, dword [ebx]
call fcn.008620b2
pop ecx
mov ecx, dword [esp + 0x34]
push eax
push dword [esp + 0x18]
push esi
push dword [esp + 0x48]
push 0x65
pop edx
call fcn.00844e3d
add esp, 0x14
mov edx, 0x81
push esi
push dword [esp + 0x3c]
mov esi, dword [esp + 0x38]
mov ecx, esi
push dword [esp + 0x18]
push dword [esp + 0x40]
call fcn.00844f6e
add esp, 0x10
mov ecx, dword [esp + 0x2c]
call fcn.0087a027
cmp dword [esp + 0x54], 0
jne 0x85e781
and dword [esp + 0x30], 0
cmp dword [esp + 0x14], 2
jne 0x85e74b
push 0x14
pop edx
mov ecx, esi
call fcn.00844d55
mov dword [esp + 0x30], eax
lea eax, [esp + 0x5c]
mov edx, edi
push eax
lea eax, [esp + 0x28]
mov ecx, ebx
push eax
push dword [esp + 0x48]
push dword [esp + 0x28]
push 8
push 0x6b
call fcn.00863eaf
mov eax, dword [esp + 0x2c]
add esp, 0x18
cmp eax, 2
jne 0x85e785
mov edx, dword [esp + 0x30]
mov ecx, esi
call fcn.00845298
mov eax, dword [esp + 0x14]
test eax, eax
je 0x85e800
cmp dword [edi + 0x38], 0
mov ecx, dword [esp + 0x24]
jne 0x85e853
mov eax, dword [esp + 0x40]
sub eax, dword [esp + 0x1c]
cmp byte [eax + ecx], 0
je 0x85e84f
mov eax, dword [esp + 0x28]
cwde
push eax
push dword [esp + 0x14]
push dword [esp + 0x68]
push ecx
push 0x1d
pop edx
mov ecx, esi
call fcn.00844f6e
add esp, 0x10
jmp 0x85e84b
push eax
push dword [esp + 0x5c]
mov edx, 0x91
mov dword [esp + 0x30], 1
mov ecx, esi
call fcn.00844d77
pop ecx
pop ecx
cmp dword [esp + 0x14], 0
je 0x85e721
mov ecx, esi
call fcn.00844fbd
mov dword [esp + 0x60], eax
jmp 0x85e72a
cmp dword [esp + 0x18], 0
mov ecx, esi
je 0x85e8c1
push dword [esp + 0x34]
push 0x25
pop edx
call fcn.00844d63
cmp dword [edi + 0x38], 0
pop ecx
push dword [esp + 0x10]
mov dword [esp + 0x4c], eax
mov ecx, esi
je 0x85e83d
push 0
push dword [esp + 0x3c]
push 0x62
pop edx
call fcn.00844cf3
add esp, 0xc
jmp 0x85e84b
push dword [esp + 0x38]
push 0x7c
pop edx
call fcn.00844d77
pop ecx
pop ecx
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x14]
cmp dword [edi + 0x38], 0
mov edx, edi
je 0x85e8df
mov ecx, dword [esp + 0x3c]
call fcn.00870eed
mov ecx, ebx
mov dword [esp + 0x30], eax
call fcn.00871c02
mov ecx, ebx
call fcn.0085d505
cmp dword [esp + 0x14], 1
jne 0x85e89a
push dword [esp + 0x1c]
mov ecx, esi
push 0x72
pop edx
call fcn.00844d63
cmp dword [ebx + 0x78], 0
pop ecx
jne 0x85e89a
mov byte [ebx + 0x14], 0
push 0xfffffffffffffff4
push dword [esp + 0x34]
mov ecx, esi
push dword [esp + 0x18]
push 1
push 0
push 0xc
pop edx
call fcn.00844e3d
add esp, 0x14
mov ecx, esi
push 2
pop edx
call fcn.00845280
jmp 0x85e90f
push dword [esp + 0x10]
push 0
push dword [esp + 0x60]
push 0x2a
pop edx
call fcn.00844cf3
add esp, 0xc
mov dword [esp + 0x48], eax
jmp 0x85e84b
push dword [esp + 0x6c]
cmp byte [ebx + 0x12], 0
push eax
push 0xb
sete al
movzx eax, al
push eax
push dword [esp + 0x38]
push dword [esp + 0x24]
push dword [esp + 0x74]
push ecx
push dword [esp + 0x90]
mov ecx, ebx
call fcn.0085e9dc
add esp, 0x24
cmp dword [esp + 0x14], 0
mov ecx, esi
je 0x85e92c
mov edx, dword [esp + 0x60]
call fcn.00844fff
mov ecx, dword [esp + 0x2c]
call fcn.0087a027
jmp 0x85e961
cmp dword [esp + 0x18], 0
je 0x85e94d
mov edi, dword [esp + 0x48]
lea eax, [edi + 1]
push eax
push dword [esp + 0x38]
push 7
pop edx
call fcn.00844d77
pop ecx
pop ecx
mov edx, edi
jmp 0x85e95a
mov edx, dword [esp + 0x48]
call fcn.00844d8c
mov edx, dword [esp + 0x48]
mov ecx, esi
call fcn.00845298
cmp byte [ebx + 0x12], 0
jne 0x85e974
cmp dword [ebx + 0x7c], 0
jne 0x85e974
mov ecx, ebx
call fcn.008624fc
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x85e9a8
push 1
push eax
push 0x4e
pop edx
mov ecx, esi
call fcn.00844d77
xor edx, edx
mov ecx, esi
inc edx
call fcn.008460e2
push 0
push 0x4a557c
push 0
xor edx, edx
mov ecx, esi
call fcn.0084614a
add esp, 0x14
lea ecx, [esp + 0x74]
call fcn.008594e3
mov ebx, dword [esp + 0x3c]
mov ecx, ebx
mov edx, dword [esp + 0x50]
call fcn.0085d0b4
mov edx, dword [ebp + 8]
mov ecx, ebx
call fcn.00852fd7
mov edx, dword [esp + 0x40]
mov ecx, ebx
call fcn.0082d90a
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret