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

Disassembly:
sub esp, 0x7c
mov eax, dword [0x682790]
xor eax, esp
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x88]
mov edx, 0x1e
mov ecx, dword [esp + 0x84]
push ebx
push ebp
mov ebp, dword [esp + 0x98]
mov ebx, eax
mov dword [esp + 0x10], eax
mov al, byte [esp + 0x94]
push esi
test al, al
mov dword [esp + 0x10], ecx
mov esi, 0x2e
mov byte [esp + 0xf], al
cmovne esi, edx
mov dword [esp + 0x2c], esi
push edi
mov edi, dword [esp + 0x90]
test ebx, ebx
je 0x8d8bb6
push ebx
call fcn.008d7af0
add esp, 4
test edx, edx
ja 0x8d8bd2
jb 0x8d8bad
cmp eax, esi
jae 0x8d8bd2
push 0
push 0x13
jmp 0x8d8e0c
push ebp
lea eax, [esp + 0x5c]
push eax
push 0
push esi
push ecx
call fcn.008d7ba0
mov ebx, eax
add esp, 0x14
test ebx, ebx
je 0x8d8e15
cmp byte [esp + 0x13], 0
mov eax, 0x65e74c
push 0
push 4
mov esi, 0x65e744
push ebx
cmove esi, eax
call fcn.008d78b0
add esp, 0xc
mov eax, dword [eax]
cmp eax, dword [esi]
je 0x8d8c0e
push 0
push 0x13
push ebp
call fcn.008d16e0
add esp, 0xc
cmp dword [esp + 0x18], 0
jmp 0x8d9190
push edi
call fcn.008d8990
add esp, 4
cmp byte [esp + 0x13], 0
jne 0x8d8c2c
push ebx
call fcn.008d7900
add esp, 4
movzx eax, ax
jmp 0x8d8c2e
xor eax, eax
push ebx
mov word [edi + 8], ax
call fcn.008d7900
push ebx
mov word [edi + 0xa], ax
call fcn.008d7900
push ebx
mov word [edi + 0xc], ax
call fcn.008d7900
movzx eax, ax
push ebx
mov dword [edi + 0x10], eax
call fcn.008d7900
xorps xmm0, xmm0
movzx esi, ax
push ebx
movlpd qword [esp + 0x60], xmm0
mov dword [esp + 0x68], 0xffffffff
call fcn.008d7900
movzx ecx, ax
mov eax, ecx
shr eax, 9
add eax, 0x50
mov dword [esp + 0x5c], eax
mov eax, ecx
shr eax, 5
and ecx, 0x1f
and eax, 0xf
mov dword [esp + 0x54], ecx
dec eax
mov ecx, esi
mov dword [esp + 0x58], eax
mov eax, ecx
shr eax, 0xb
mov dword [esp + 0x50], eax
mov eax, ecx
shr eax, 5
and ecx, 0x1f
and eax, 0x3f
add ecx, ecx
mov dword [esp + 0x4c], eax
lea eax, [esp + 0x48]
push eax
mov dword [esp + 0x4c], ecx
call dword [0x51cfb0]
push ebx
mov dword [edi + 0x18], eax
mov dword [edi + 0x1c], edx
call fcn.008d7960
push ebx
mov dword [edi + 0x20], eax
call fcn.008d7960
push ebx
mov dword [edi + 0x28], eax
mov dword [edi + 0x2c], 0
call fcn.008d7960
push ebx
mov dword [edi + 0x30], eax
mov dword [edi + 0x34], 0
call fcn.008d7900
movzx eax, ax
push ebx
mov dword [esp + 0x4c], eax
call fcn.008d7900
add esp, 0x2c
movzx eax, ax
cmp byte [esp + 0x13], 0
mov dword [esp + 0x1c], eax
je 0x8d8d38
xor esi, esi
xorps xmm0, xmm0
xor eax, eax
movlpd qword [esp + 0x24], xmm0
mov ecx, dword [esp + 0x24]
mov word [edi + 0x48], ax
mov dword [edi + 0x4c], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x2c], esi
mov dword [edi + 0x44], esi
jmp 0x8d8d71
push ebx
call fcn.008d7900
movzx esi, ax
push ebx
mov dword [esp + 0x34], esi
call fcn.008d7900
movzx eax, ax
push ebx
mov dword [edi + 0x44], eax
call fcn.008d7900
push ebx
mov word [edi + 0x48], ax
call fcn.008d7960
push ebx
mov dword [edi + 0x4c], eax
call fcn.008d7960
add esp, 0x14
mov ecx, eax
xor eax, eax
mov dword [edi + 0x50], ecx
push ebx
mov dword [edi + 0x54], eax
call fcn.008d7ca0
add esp, 4
test al, al
jne 0x8d8d9b
push 0
push 0x14
push ebp
call fcn.008d16e0
add esp, 0xc
cmp dword [esp + 0x18], 0
jmp 0x8d9190
movzx eax, word [edi + 0xc]
test al, 1
je 0x8d8db7
test al, 0x40
mov ecx, 1
mov eax, 0xffff
cmove eax, ecx
movzx eax, ax
jmp 0x8d8db9
xor eax, eax
mov ecx, dword [esp + 0x20]
mov word [edi + 0x5a], ax
mov eax, dword [esp + 0x1c]
movzx edx, ax
movzx eax, si
mov esi, dword [esp + 0x18]
add eax, edx
movzx ecx, cx
add ecx, eax
mov dword [edi + 0x38], 0
mov dword [edi + 0x3c], 0
mov dword [edi + 0x40], 0
mov dword [esp + 0x24], ecx
push ebx
test esi, esi
je 0x8d8e2d
call fcn.008d7af0
add esp, 4
test edx, edx
ja 0x8d8e4d
jb 0x8d8e08
cmp eax, dword [esp + 0x24]
jae 0x8d8e4d
push 0xc
push 0x15
push ebp
call fcn.008d16e0
add esp, 0xc
pop edi
pop esi
or eax, 0xffffffff
pop ebp
or edx, eax
pop ebx
mov ecx, dword [esp + 0x78]
xor ecx, esp
call fcn.00930738
add esp, 0x7c
ret
call fcn.008d7880
push ebp
push 0
push 0
push dword [esp + 0x34]
push dword [esp + 0x28]
call fcn.008d7ba0
mov ebx, eax
add esp, 0x18
test ebx, ebx
je 0x8d8e15
mov eax, dword [esp + 0x20]
test ax, ax
je 0x8d8ead
push ebp
push 1
push eax
push dword [esp + 0x20]
push ebx
call fcn.008da130
add esp, 0x14
mov dword [edi + 0x38], eax
test eax, eax
jne 0x8d8e89
push ebp
call fcn.008d1690
add esp, 4
cmp eax, 0x11
jne 0x8d918e
push 0xc
push 0x15
jmp 0x8d9185
mov ecx, 0x800
test word [edi + 0xc], cx
je 0x8d8ead
push 2
push eax
call fcn.008dcc20
add esp, 8
cmp eax, 5
jne 0x8d8ead
push 0xd
push 0x15
jmp 0x8d9185
mov ecx, dword [esp + 0x1c]
test cx, cx
je 0x8d8f28
push ebp
push 0
movzx eax, cx
push eax
push dword [esp + 0x20]
push ebx
call fcn.008da020
mov ecx, eax
add esp, 0x14
mov dword [esp + 0x20], ecx
test ecx, ecx
je 0x8d918e
cmp byte [esp + 0x13], 0
lea eax, [edi + 0x3c]
push ebp
push eax
mov edx, 0x100
mov eax, 0x200
cmovne eax, edx
push eax
mov eax, dword [esp + 0x28]
push eax
push ecx
call fcn.008da510
add esp, 0x14
push dword [esp + 0x20]
test al, al
jne 0x8d8f14
call dword [fcn.0051ce4c]
add esp, 4
jmp 0x8d918e
call dword [fcn.0051ce4c]
add esp, 4
cmp byte [esp + 0x13], 0
je 0x8d8f28
mov byte [edi + 4], 1
mov eax, dword [esp + 0x2c]
test ax, ax
je 0x8d8f71
push ebp
push 0
push eax
push dword [esp + 0x20]
push ebx
call fcn.008da130
add esp, 0x14
mov dword [edi + 0x40], eax
test eax, eax
je 0x8d918e
mov ecx, 0x800
test word [edi + 0xc], cx
je 0x8d8f71
push 2
push eax
call fcn.008dcc20
add esp, 8
cmp eax, 5
jne 0x8d8f71
push 0xd
push 0x15
jmp 0x8d9185
push dword [edi + 0x38]
push 0x7075
push edi
call fcn.008d8a70
push dword [edi + 0x40]
mov dword [edi + 0x38], eax
push 0x6375
push edi
call fcn.008d8a70
add esp, 0x18
mov dword [edi + 0x40], eax
cmp dword [edi + 0x30], 0xffffffff
jne 0x8d8fa2
cmp dword [edi + 0x34], 0
je 0x8d8fc2
cmp dword [edi + 0x28], 0xffffffff
jne 0x8d8fae
cmp dword [edi + 0x2c], 0
je 0x8d8fc2
cmp dword [edi + 0x50], 0xffffffff
jne 0x8d9174
cmp dword [edi + 0x54], 0
jne 0x8d9174
cmp byte [esp + 0x13], 0
mov ecx, 0x100
push ebp
mov eax, 0x200
cmovne eax, ecx
push eax
push 0
push 1
lea eax, [esp + 0x28]
push eax
push dword [edi + 0x3c]
call fcn.008da300
mov ecx, eax
add esp, 0x18
test ecx, ecx
je 0x8d918e
movzx eax, word [esp + 0x18]
cdq
push edx
push eax
push ecx
call fcn.008d7b20
add esp, 0xc
mov dword [esp + 0x14], eax
test eax, eax
jne 0x8d9015
push eax
push 0xe
jmp 0x8d9185
cmp dword [edi + 0x30], 0xffffffff
jne 0x8d9032
cmp dword [edi + 0x34], 0
jne 0x8d9032
push eax
call fcn.008d79c0
add esp, 4
mov dword [edi + 0x30], eax
mov dword [edi + 0x34], edx
jmp 0x8d9046
cmp byte [esp + 0x13], 0
je 0x8d904a
push 0
push 8
push eax
call fcn.008d7f90
add esp, 0xc
mov eax, dword [esp + 0x14]
cmp dword [edi + 0x28], 0xffffffff
jne 0x8d9065
cmp dword [edi + 0x2c], 0
jne 0x8d9065
push eax
call fcn.008d79c0
add esp, 4
mov dword [edi + 0x28], eax
mov dword [edi + 0x2c], edx
cmp byte [esp + 0x13], 0
jne 0x8d90a2
cmp dword [edi + 0x50], 0xffffffff
jne 0x8d908a
cmp dword [edi + 0x54], 0
jne 0x8d908a
push dword [esp + 0x14]
call fcn.008d79c0
add esp, 4
mov dword [edi + 0x50], eax
mov dword [edi + 0x54], edx
cmp dword [edi + 0x44], 0xffff
jne 0x8d90a2
push dword [esp + 0x14]
call fcn.008d7960
add esp, 4
mov dword [edi + 0x44], eax
push dword [esp + 0x14]
call fcn.008d7860
add esp, 4
test al, al
jne 0x8d9168
movzx eax, word [esp + 0x18]
mov byte [esp + 0x1c], 1
cmp eax, 0x18
je 0x8d90fa
cmp eax, 0x1c
jne 0x8d9150
push 0
push 0x18
push dword [esp + 0x1c]
call fcn.008d7f50
push dword [esp + 0x20]
call fcn.008d7960
mov ecx, dword [esp + 0x2c]
xor edx, edx
add esp, 0x10
movzx ecx, cl
cmp dword [edi + 0x44], eax
cmovne ecx, edx
mov dword [esp + 0x1c], ecx
push 0
push 0
push dword [esp + 0x1c]
call fcn.008d7f50
push dword [esp + 0x20]
call fcn.008d79c0
add esp, 0x10
cmp dword [edi + 0x30], eax
jne 0x8d9150
cmp dword [edi + 0x34], edx
jne 0x8d9150
push dword [esp + 0x14]
call fcn.008d79c0
add esp, 4
cmp dword [edi + 0x28], eax
jne 0x8d9150
cmp dword [edi + 0x2c], edx
jne 0x8d9150
push dword [esp + 0x14]
call fcn.008d79c0
add esp, 4
cmp dword [edi + 0x50], eax
jne 0x8d9150
cmp dword [edi + 0x54], edx
jne 0x8d9150
cmp byte [esp + 0x1c], 0
jne 0x8d9168
push 0xe
push 0x15
push ebp
call fcn.008d16e0
push dword [esp + 0x20]
call fcn.008d7880
add esp, 0x10
jmp 0x8d918e
push dword [esp + 0x14]
call fcn.008d7880
add esp, 4
push ebx
call fcn.008d7ca0
add esp, 4
test al, al
jne 0x8d91a4
push 0
push 0x14
push ebp
call fcn.008d16e0
add esp, 0xc
test esi, esi
jne 0x8d8e15
push ebx
call fcn.008d7880
add esp, 4
jmp 0x8d8e15
test esi, esi
jne 0x8d91b1
push ebx
call fcn.008d7880
add esp, 4
cmp dword [edi + 0x54], 0x7fffffff
jb 0x8d91cb
ja 0x8d91c2
cmp dword [edi + 0x50], 0xffffffff
jbe 0x8d91cb
push 0x1b
push 4
jmp 0x8d8e0c
cmp dword [edi + 0x10], 0x63
jne 0x8d92dd
push 0
push 0x300
push 0
push 0x9901
lea eax, [esp + 0x28]
push eax
push dword [edi + 0x3c]
call fcn.008da300
mov esi, eax
add esp, 0x18
test esi, esi
je 0x8d9328
mov cx, word [esp + 0x18]
cmp cx, 7
jb 0x8d9328
movzx eax, cx
cdq
push edx
push eax
push esi
call fcn.008d7b20
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x8d9229
push eax
push 0x14
jmp 0x8d8e0c
push esi
mov bl, 1
call fcn.008d7900
movzx eax, ax
add esp, 4
sub eax, 1
je 0x8d9254
sub eax, 1
jne 0x8d9310
cmp dword [edi + 0x34], eax
ja 0x8d9254
jb 0x8d9252
cmp dword [edi + 0x30], 0x14
jae 0x8d9254
xor bl, bl
push 0
push 2
push esi
call fcn.008d78b0
mov ecx, 0x4541
add esp, 0xc
cmp word [eax], cx
jne 0x8d9310
push esi
call fcn.008d7aa0
movzx eax, al
add esp, 4
sub eax, 1
je 0x8d929c
sub eax, 1
je 0x8d9295
sub eax, 1
jne 0x8d9310
mov eax, 0x103
jmp 0x8d92a1
mov eax, 0x102
jmp 0x8d92a1
mov eax, 0x101
cmp word [esp + 0x18], 7
je 0x8d92c1
push 0xe
push 0x15
push ebp
call fcn.008d16e0
push esi
call fcn.008d7880
add esp, 0x10
jmp 0x8d8e15
push esi
mov byte [edi + 6], bl
mov word [edi + 0x5a], ax
call fcn.008d7900
movzx eax, ax
push esi
mov dword [edi + 0x10], eax
call fcn.008d7880
add esp, 8
push dword [edi + 0x3c]
call fcn.008da7d0
mov ecx, dword [esp + 0x8c]
add esp, 4
mov dword [edi + 0x3c], eax
mov edx, 0
mov eax, dword [esp + 0x30]
add eax, dword [esp + 0x24]
pop edi
pop esi
pop ebp
adc edx, edx
pop ebx
xor ecx, esp
call fcn.00930738
add esp, 0x7c
ret
push 0
push 0x18
push ebp
call fcn.008d16e0
push esi
call fcn.008d7880
add esp, 0x10
jmp 0x8d8e15
push 0xe
jmp 0x8d8e0a