Function at 0x6ef190
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xc0
mov eax, dword [ebp + 8]
mov dword [esp + 0xb8], 0
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb0], 0
mov dword [esp + 0xac], 0
cmp dword [eax + 8], 0
je 0x6ef2d4
mov ecx, 0xffffffff
mov eax, 0x62
add eax, 0xffffffb0
mov dword [esp + 0x40], eax
mov byte [esp + 0x47], bl
mov edi, 0
jmp 0x6ef213
mov eax, dword [esp + 0x40]
mov dl, al
add dl, 0x65
mov byte [esp + 0x47], dl
mov edx, dword [ebp + 8]
lea edx, [edx + 4]
xor ebx, ebx
add ecx, 1
mov dword [esp + 0xa4], eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x90], esi
mov dword [esp + 0x9c], eax
mov byte [esp + 0x53], al
mov byte [esp + 0x9a], al
mov byte [esp + 0x9b], al
mov dword [esp + 0xa0], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x88], esi
mov dword [esp + 0xa8], eax
mov eax, 0
mov dword [esp + 0x68], esi
mov dword [esp + 0x6c], esi
mov dword [esp + 0x74], esi
mov dword [esp + 0x78], esi
mov dword [esp + 0x70], esi
mov dword [esp + 0x58], esi
mov dword [esp + 0x54], esi
mov dword [esp + 0x8c], esi
mov dword [esp + 0x4c], esi
mov dword [esp + 0x48], esi
mov dword [esp + 0x64], esi
mov dword [esp + 0x5c], esi
mov dword [esp + 0x7c], esi
jb 0x6ef200
mov dword [esp + 0x38], eax
mov dword [esp + 0x34], edi
mov dword [esp + 0x2c], edx
cmp dword [esp + 0x40], 0xb
mov edx, ebx
mov ebx, dword [esp + 0x90]
jne 0x6ef35c
jmp 0x6efb1f
mov dword [esp + 0x40], 0x10
mov dword [esp + 0xa4], eax
mov dword [esp + 0x60], ecx
mov dword [esp + 0x2c], eax
mov byte [esp + 0x9a], dl
mov byte [esp + 0x47], cl
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], eax
mov dword [esp + 0x90], ecx
mov dword [esp + 0x9c], ecx
mov dword [esp + 0xa0], ecx
mov dword [esp + 0x94], ecx
mov dword [esp + 0x84], ecx
mov dword [esp + 0x80], ecx
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x70], ecx
mov dword [esp + 0x58], ecx
mov dword [esp + 0x54], ecx
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x48], ecx
mov dword [esp + 0x64], ecx
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x88], ecx
jmp 0x6efada
mov edi, edx
mov eax, dword [esp + 0x2c]
mov eax, dword [eax]
mov ecx, dword [esp + 0x38]
lea edx, [ecx + ecx*2]
lea ecx, [eax + edx*8]
mov dword [esp + 0x58], ecx
mov ecx, dword [eax + edx*8]
cmp ecx, 0x3b
je 0x6ef3e3
cmp ecx, 0x22
je 0x6ef40d
mov eax, 7
cmp ecx, 0x10
jne 0x6ef489
lea eax, [esp + 0xb0]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x58]
mov dword [esp], eax
call fcn.00789450
mov dword [esp + 0x70], eax
mov dword [esp + 0xb8], eax
test eax, eax
mov eax, dword [esp + 0x34]
mov ecx, eax
mov edx, edi
mov edi, ecx
mov dword [esp + 0x40], edx
mov dword [esp + 0x4c], edx
mov dword [esp + 0x48], eax
mov eax, 5
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x64], ecx
jne 0x6efa7e
jmp 0x6efdfa
mov ecx, dword [eax + edx*8 + 0x14]
mov dword [esp + 0x40], ecx
mov eax, dword [eax + edx*8 + 0x10]
shr eax, 2
mov dword [esp + 0x4c], edi
mov edi, eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x64], eax
jmp 0x6ef6a6
movzx edx, byte [esp + 0x47]
cmp edx, 0x26
je 0x6ef4b3
mov ecx, 0x15
cmp edx, 0x31
je 0x6ef51e
cmp edx, 0x6d
jne 0x6ef54d
lea eax, [esp + 0xac]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x58]
mov dword [esp], eax
call fcn.00789960
mov dword [esp + 0x70], eax
mov dword [esp + 0xb8], eax
test eax, eax
jne 0x6efa7e
mov eax, 0x10
mov byte [esp + 0x47], 0x31
mov ecx, dword [esp + 0x34]
mov esi, ecx
mov edx, edi
mov edi, esi
mov dword [esp + 0x40], edx
mov dword [esp + 0x4c], edx
mov dword [esp + 0x48], ecx
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x64], ecx
jmp 0x6ef8eb
mov dword [esp + 0x90], ebx
mov ecx, dword [esp + 0x34]
mov ebx, ecx
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], edi
mov dword [esp + 0x4c], edi
mov dword [esp + 0x48], ecx
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x64], ecx
jmp 0x6ef578
mov dword [esp + 0x40], 5
mov byte [esp + 0x47], 0x77
lea eax, [esp + 0xac]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x58]
mov dword [esp], eax
call fcn.00789960
mov dword [esp + 0x70], eax
mov dword [esp + 0xb8], eax
test eax, eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], edi
mov dword [esp + 0x4c], edi
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x64], ecx
mov ecx, eax
mov eax, edi
mov dword [esp + 0x3c], edi
mov edi, ecx
mov ecx, 0x10
mov edx, dword [esp + 0x74]
jne 0x6ef9ed
jmp 0x6ef941
mov dword [esp + 0x90], ebx
mov eax, dword [esp + 0x34]
mov dword [esp + 0x6c], eax
mov dword [esp + 0x40], edi
mov dword [esp + 0x4c], edi
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x64], eax
mov bh, byte [esp + 0x9b]
jmp 0x6efd8f
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x90], 5
mov eax, ecx
mov edx, edi
mov edi, eax
mov dword [esp + 0x40], edx
mov dword [esp + 0x4c], edx
mov dword [esp + 0x48], ecx
mov eax, dword [esp + 0x38]
mov dword [esp + 0x64], eax
jmp 0x6ef5ce
cmp eax, 7
jne 0x6ef58b
mov edi, ebx
mov ebx, dword [esp + 0x90]
jmp 0x6ef6a6
mov dword [esp + 0x90], 0x13
mov byte [esp + 0x9a], 5
mov ecx, dword [esp + 0x5c]
inc ecx
mov dword [esp + 0xa0], ecx
cmp ecx, dword [esp + 0x80]
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x9c], ecx
mov edx, dword [esp + 0x3c]
mov edi, ebx
mov ebx, eax
je 0x6ef7b8
cmp dword [esp + 0x90], 5
jne 0x6efd14
mov dword [esp + 0x3c], edx
mov dword [esp + 0x90], ebx
lea eax, [esp + 0xac]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x58]
mov dword [esp], eax
call fcn.00789960
mov dword [esp + 0xb8], eax
test eax, eax
je 0x6ef612
mov dword [esp + 0x70], eax
jmp 0x6efa7e
mov dword [esp + 0x70], eax
mov dword [esp + 0x28], 0xd
mov byte [esp + 0x47], 0x6d
mov eax, dword [esp + 0x84]
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x80]
mov eax, dword [esp + 0x48]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x4c]
mov edx, dword [esp + 0x7c]
mov ebx, dword [esp + 0x88]
jmp 0x6ef724
lea eax, [esp + 0xac]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x58]
mov dword [esp], eax
call fcn.00789960
mov dword [esp + 0xb8], eax
test eax, eax
je 0x6ef67c
mov dword [esp + 0x70], eax
jmp 0x6efa7e
mov dword [esp + 0x70], eax
mov byte [esp + 0x9b], bh
mov ecx, 0xc
mov byte [esp + 0x47], 0x26
mov ebx, dword [esp + 0x48]
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x40], edx
mov dword [esp + 0x3c], edi
jmp 0x6efcbe
mov ecx, 0x15
mov eax, dword [esp + 0x64]
lea edx, [eax + 1]
mov dword [esp + 0x38], edx
mov eax, dword [ebp + 8]
cmp edx, dword [eax + 8]
jae 0x6ef6cb
mov edx, dword [esp + 0x40]
mov dword [esp + 0x34], edi
jmp 0x6ef85a
mov al, 0x12
movzx eax, al
cmp eax, 0x12
mov eax, dword [esp + 0x40]
jne 0x6ef761
mov dword [esp + 0x90], ebx
mov ecx, eax
mov dword [esp + 0x30], 0x16
mov dword [esp + 0x28], 0x1c
mov byte [esp + 0x53], 0x59
test ecx, ecx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x34], edi
mov dword [esp + 0x24], edi
mov dword [esp + 0x68], edi
mov dword [esp + 0x6c], ecx
mov edx, dword [esp + 0x7c]
mov ecx, edi
mov ebx, dword [esp + 0x88]
jne 0x6efb62
mov dword [esp + 0x88], ebx
mov dword [esp + 0x7c], edx
cmp dword [esp + 0x28], 0xd
mov edx, dword [esp + 0x40]
mov dword [esp + 0x84], edx
mov dword [esp + 0x80], ecx
mov edi, dword [esp + 0x24]
mov dword [esp + 0x40], eax
mov ebx, dword [esp + 0x90]
mov edx, dword [esp + 0x3c]
je 0x6ef6a6
jmp 0x6ef7b8
mov byte [esp + 0x53], 0x59
test eax, eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x80], edi
mov edx, eax
mov dword [esp + 0x34], edi
jne 0x6efba1
jmp 0x6ef7b8
mov eax, dword [esp + 0xac]
mov ecx, dword [esp + 0x80]
test ecx, ecx
je 0x6ef7ac
mov byte [esp + 0x53], 0x35
test eax, eax
mov dword [esp + 0x94], eax
jne 0x6ef868
jmp 0x6ef7b8
mov byte [esp + 0x53], 0x35
mov dword [esp + 0x94], eax
mov dword [esp + 0x3c], edx
mov dword [esp + 0x90], ebx
mov ebx, dword [ebp + 0xc]
lea eax, [esp + 0xb8]
mov dword [esp + 0x14], eax
mov dword [esp], ebx
mov dword [esp + 0x18], 4
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 1
call fcn.007855d0
mov dword [esp + 0xb8], eax
test eax, eax
jne 0x6ef846
mov ecx, dword [esp + 0xac]
test ecx, ecx
je 0x6ef846
mov dword [esp + 0x74], 0xb
mov dword [esp + 4], ecx
mov dword [esp], ebx
call fcn.00785f60
mov dword [esp + 0x70], eax
mov dword [esp + 0xb8], eax
mov ebx, dword [esp + 0x90]
mov ecx, dword [esp + 0x40]
jmp 0x6efa67
mov dword [esp + 0x70], eax
mov ebx, dword [esp + 0x90]
mov edx, dword [esp + 0x3c]
mov ecx, 0xc
cmp ecx, 0xc
jne 0x6ef35c
jmp 0x6efa7e
mov dword [esp + 0x6c], edi
mov dword [esp + 0x3c], edx
mov edi, ebx
mov ecx, 0xffffffff
mov eax, 2
xor eax, 0x10
mov edx, dword [esp + 0x94]
lea edx, [edx + 4]
mov ebx, dword [esp + 0x60]
jmp 0x6ef8d8
mov bl, al
add bl, 0x3e
mov byte [esp + 0x9a], bl
mov bl, al
add bl, 0x34
mov dword [esp + 0xa8], ebx
mov bl, al
add bl, 0x4a
mov byte [esp + 0x9b], bl
mov ebx, dword [esp + 0x94]
mov edi, dword [ebx]
mov dword [esp + 0xa0], 0
mov dword [esp + 0x9c], edi
mov dword [esp + 0xa4], ebx
mov ebx, edx
add ecx, 1
jb 0x6ef890
mov dword [esp + 0x60], ebx
mov ebx, edi
mov edx, dword [esp + 0x3c]
mov edi, dword [esp + 0x6c]
cmp eax, 0x10
je 0x6ef6a6
jmp 0x6efd14
mov byte [esp + 0x9b], 0x28
test eax, eax
mov edx, edi
je 0x6ef914
mov ebx, dword [esp + 0x90]
mov edi, dword [esp + 0x6c]
jmp 0x6ef95b
mov dword [esp + 0x3c], edx
mov ecx, 0x15
mov dword [esp + 0x78], 0
mov ebx, dword [esp + 0x90]
mov edx, ebx
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x5c], eax
mov edi, dword [esp + 0x6c]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x40], eax
mov dword [esp + 0x74], edx
cmp ecx, 0x10
mov edx, dword [esp + 0x3c]
je 0x6ef6a6
jmp 0x6efc96
mov dword [esp + 0x3c], edx
mov dword [esp + 0x90], ebx
mov ecx, dword [esp + 0xa0]
mov edx, edi
mov edi, dword [esp + 0x84]
lea eax, [edi + ecx*4]
mov dword [esp + 0x54], eax
xor eax, eax
mov dword [esp + 0x68], edx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x6c], edx
mov dword [esp + 0x78], 0
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x88], ebx
mov dword [esp + 0x84], edi
mov dword [esp + 0x40], 0x13
mov dword [esp + 0x74], 0xa
mov ecx, dword [esp + 0x54]
mov ecx, dword [ecx]
mov edx, dword [esp + 0x60]
mov edi, ebx
mov ebx, dword [edx]
mov dword [esp + 0x8c], ebx
mov edx, eax
shl edx, 6
xor ecx, dword [ebx + edx]
or ecx, dword [ebx + edx + 4]
mov edx, edi
mov edi, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x7c], eax
mov ebx, dword [esp + 0x90]
jne 0x6efa67
cmp dword [esp + 0x40], 5
je 0x6efa7e
mov eax, dword [esp + 0xa8]
movzx eax, al
cmp eax, 0x30
je 0x6efa8a
mov ecx, 0xffffffff
cmp eax, 0x46
jne 0x6efbd8
mov edi, ebx
mov eax, dword [esp + 0x7c]
shl eax, 6
mov edx, dword [esp + 0xa4]
jmp 0x6efa50
mov ebx, 0x7a
add bl, 0xb6
mov dword [esp + 0xa8], ebx
mov ebx, dword [esp + 0x8c]
mov dword [ebx + eax + 0x30], 0
mov ebx, dword [edx]
add ecx, 1
jb 0x6efa30
mov dword [esp + 0x88], ebx
mov ebx, edi
mov edx, dword [esp + 0x3c]
jmp 0x6efb1f
cmp dword [esp + 0x74], 0xa
mov dword [esp + 0x68], edi
mov dword [esp + 0x6c], ecx
mov edx, dword [esp + 0x3c]
je 0x6efb1f
mov eax, dword [esp + 0x70]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esp + 0x90], ebx
mov dword [esp + 0x74], edx
mov dword [esp + 0x40], 0x1b
mov edi, dword [esp + 0x7c]
mov ecx, edi
shl ecx, 6
mov esi, dword [esp + 0x8c]
mov dword [esi + ecx + 0x30], 0
mov cl, 0x46
mov eax, dword [esp + 0xa4]
mov edx, dword [eax]
mov dword [esp + 0x88], edx
mov dl, byte [esp + 0x9b]
mov dh, byte [esp + 0x53]
mov ebx, dword [esp + 0x68]
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x6c], eax
mov dword [esp + 0x68], ebx
mov byte [esp + 0x53], dh
mov dword [esp + 0x7c], edi
mov dword [esp + 0x8c], esi
mov dword [esp + 0xa8], ecx
mov byte [esp + 0x9b], dl
cmp dword [esp + 0x40], 0x10
mov edi, ebx
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x40], eax
mov edx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x90]
je 0x6ef7b8
mov dword [esp + 0x3c], edx
mov dword [esp + 0x90], ebx
mov dword [esp + 0x30], 6
mov edx, dword [esp + 0x7c]
lea eax, [edx + 1]
mov ebx, dword [esp + 0x88]
cmp eax, ebx
mov dword [esp + 0x78], ebx
mov dword [esp + 0x74], ebx
mov edi, dword [esp + 0x84]
mov dword [esp + 0x40], edi
mov ecx, dword [esp + 0x80]
jb 0x6ef997
mov dword [esp + 0x88], ebx
mov dword [esp + 0x7c], edx
cmp dword [esp + 0x30], 6
mov eax, dword [esp + 0x40]
mov dword [esp + 0x84], eax
mov dword [esp + 0x80], ecx
mov edi, dword [esp + 0x68]
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x40], eax
mov ebx, dword [esp + 0x90]
mov edx, dword [esp + 0x3c]
je 0x6efc96
mov al, byte [esp + 0x53]
movzx ecx, al
cmp ecx, 0x1d
je 0x6ef784
mov eax, 7
cmp ecx, 0x59
jne 0x6efc55
mov dword [esp + 0x6c], edi
mov edi, edx
mov dword [esp + 0x90], ebx
mov bh, byte [esp + 0x9b]
jmp 0x6efd3f
mov dword [esp + 0x74], edx
mov dword [esp + 0x90], ebx
mov edx, pe_nt_image_headers32
mov eax, pe_nt_image_headers32
xor eax, 0x8b
mov dword [esp + 0x40], eax
sub eax, edx
mov edx, dword [esp + 0x7c]
shl edx, 6
jmp 0x6efc34
mov bl, al
xor bl, 0xdd
mov dword [esp + 0xa8], ebx
mov edi, dword [esp + 0x8c]
mov dword [edi + edx + 0x30], 0
mov edi, dword [esp + 0xa4]
mov edi, dword [edi]
add ecx, 1
jb 0x6efc10
mov dword [esp + 0x88], edi
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x3c]
mov edi, dword [esp + 0x34]
mov eax, dword [esp + 0x38]
jmp 0x6ef2af
mov ecx, dword [esp + 0xac]
mov eax, dword [esp + 0x80]
test eax, eax
je 0x6efc85
mov byte [esp + 0x53], 0x1d
mov eax, 0x1a
test ecx, ecx
mov dword [esp + 0x94], ecx
jne 0x6efd06
jmp 0x6ef7b8
mov byte [esp + 0x53], 0x1d
mov dword [esp + 0x94], ecx
jmp 0x6ef7b8
mov dword [esp + 0x90], ebx
mov ebx, edi
mov dword [esp + 0x3c], edx
mov eax, 0x17
mov ecx, 0x18
movzx edx, byte [esp + 0x9a]
cmp edx, 0x50
jne 0x6ef578
cmp ecx, 0xc
mov edi, ebx
jne 0x6efcd1
mov ebx, dword [esp + 0x90]
jmp 0x6ef6a6
mov eax, 0xa
mov byte [esp + 0x9a], 0x50
mov ecx, dword [esp + 0x5c]
inc ecx
mov dword [esp + 0xa0], ecx
cmp ecx, dword [esp + 0x80]
mov ebx, dword [esp + 0x74]
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x9c], ecx
mov edx, dword [esp + 0x3c]
jne 0x6efd14
cmp eax, 0xa
je 0x6ef7b8
jmp 0x6ef868
mov dword [esp + 0x6c], edi
mov edi, edx
mov dword [esp + 0x90], ebx
mov bh, byte [esp + 0x9b]
movzx edx, bh
cmp edx, 0x5c
je 0x6efda2
mov eax, 0xd
mov ecx, 6
cmp edx, 0x76
jne 0x6efd8f
cmp eax, 7
mov eax, dword [esp + 0x9c]
jne 0x6ef8f9
mov byte [esp + 0x9b], bh
mov byte [esp + 0x53], 0x59
mov eax, dword [esp + 0xac]
cmp dword [esp + 0x80], 0
je 0x6efde1
test eax, eax
mov dword [esp + 0x94], eax
mov ebx, dword [esp + 0x90]
mov edx, edi
mov edi, dword [esp + 0x6c]
mov eax, 0x14
jne 0x6ef868
jmp 0x6efdfa
cmp ecx, 6
jne 0x6ef651
mov byte [esp + 0x9b], 0x5c
jmp 0x6efdaa
mov byte [esp + 0x9b], 0x76
mov dword [esp + 0x78], 0
cmp dword [esp + 0x9c], 0
mov ebx, dword [esp + 0x90]
mov dword [esp + 0x74], ebx
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x5c], eax
mov edx, edi
mov edi, dword [esp + 0x6c]
jne 0x6ef95b
jmp 0x6efc96
mov dword [esp + 0x94], eax
mov ebx, dword [esp + 0x90]
mov edx, edi
mov edi, dword [esp + 0x6c]
mov eax, 0x14
cmp eax, 5
je 0x6ef6a6
jmp 0x6ef7b8