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

Disassembly:
push ebp
lea ebp, [esp - 0x74]
sub esp, 0x194
push ebx
push esi
mov esi, ecx
push edi
lea ecx, [ebp - 0xc8]
mov dword [ebp + 0x6c], esi
call fcn.300453e0
mov eax, dword [esi + 8]
mov ecx, dword [esi + 4]
mov cl, byte [eax + ecx]
lea edi, [esi + 4]
inc eax
mov dword [edi + 4], eax
mov al, byte [ebp + 0x7c]
test al, al
movzx edx, cl
mov dword [ebp + 0x14], edx
jne 0x300e6d5e
mov eax, dword [edi + 4]
mov ecx, dword [edi]
mov cl, byte [eax + ecx]
xor edx, edx
mov dh, cl
inc eax
mov dword [edi + 4], eax
or dword [ebp + 0x14], edx
mov ecx, dword [edi + 4]
mov eax, dword [edi]
add eax, ecx
add ecx, 2
mov dword [edi + 4], ecx
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax]
mov eax, dword [ebp + 0x14]
test ah, 8
mov dword [ebp + 0x1c], esi
mov dword [ebp + 0x20], ecx
je 0x300e6f4d
mov ecx, dword [esi + 0x2c]
mov dl, byte [ecx + 0x642]
test dl, dl
je 0x300e6f4d
mov dword [ebp + 0x70], 0
call fcn.300e2420
mov edx, dword [esi + 0xdc]
mov ebx, dword [edx + 0x24]
mov ecx, edi
mov dword [ebp + 0x64], eax
mov dword [ebp + 0x60], ebx
call fcn.300e1d20
mov esi, dword [esi + 0x2c]
mov dword [ebp + 0x5c], eax
mov eax, dword [esi + 0x26c]
mov dword [ebp + 0x68], eax
mov eax, dword [ebp - 0xcc]
and eax, 0xfffffff0
xor edi, edi
push ebx
lea ecx, [ebp - 0x120]
mov dword [ebp - 0x120], edi
mov dword [ebp - 0xcc], eax
call fcn.301c5f6e
mov ecx, dword [ebp - 0xcc]
and ecx, 0xfffffff2
lea edx, [ebp - 0x114]
or ecx, 2
push edi
push edx
mov dword [ebp - 0xcc], ecx
call fcn.301c609d
mov esi, dword [ebp + 0x60]
mov ebx, dword [esi + 0x17c4]
add esp, 8
cmp eax, edi
jne 0x300e6e74
mov ebx, dword [ebp + 0x5c]
push ebx
mov ecx, esi
call fcn.301c185a
mov edi, dword [ebp + 0x64]
push eax
mov eax, dword [ebp + 0x68]
push eax
mov ecx, edi
call fcn.30191270
push ebx
mov esi, eax
call fcn.30208320
add esp, 4
test esi, esi
je 0x300e6e5d
mov ecx, dword [esi + 0x10]
mov edx, dword [ecx + 0x18]
mov eax, dword [edx + 0x24]
push 0xffffffffffffffff
push eax
mov ecx, edi
call fcn.30190870
mov ebx, eax
mov dword [ebp + 0x70], ebx
xor edi, edi
jmp 0x300e6e8a
lea ecx, [ebp - 0x120]
call fcn.301c5fbe
pop edi
pop esi
pop ebx
add ebp, 0x74
mov esp, ebp
pop ebp
ret 4
lea ecx, [ebp - 0x120]
call fcn.301c5ff0
push ebx
mov ecx, esi
call fcn.3018a130
mov ebx, dword [ebp + 0x70]
lea ecx, [ebp - 0x120]
call fcn.301c5fbe
cmp ebx, edi
je 0x300e727b
mov eax, dword [ebp + 0x14]
test ah, 0x10
je 0x300e6f42
cmp dword [ebx + 0x78], 1
jne 0x300e727b
push 0x80
call fcn.3007a1f0
mov esi, dword [ebp + 0x6c]
add esp, 4
cmp eax, edi
je 0x300e6ee3
mov ecx, dword [esi + 0x2c]
push 0xff
push 0xc
push 0xfff4
push ecx
mov ecx, eax
call fcn.300d03c0
mov dword [ebp + 0x18], eax
jmp 0x300e6ee6
mov dword [ebp + 0x18], edi
push 0x24
call fcn.3007a1f0
mov edi, eax
add esp, 4
test edi, edi
je 0x300e6f2f
push 0x50
call fcn.3007a1f0
add esp, 4
test eax, eax
je 0x300e6f21
mov ecx, dword [esi + 0xdc]
push ebx
push ecx
mov ecx, eax
call fcn.30089690
push 0
push 0
push eax
mov ecx, edi
call fcn.30087860
jmp 0x300e6f31
xor eax, eax
push eax
push eax
push eax
mov ecx, edi
call fcn.30087860
jmp 0x300e6f31
xor eax, eax
mov edx, dword [ebp + 0x18]
mov dword [edx], eax
mov eax, dword [ebp + 0x18]
or byte [eax + 0x7f], 1
jmp 0x300e7053
mov esi, dword [ebp + 0x6c]
mov dword [ebp + 0x18], ebx
jmp 0x300e7055
test ah, 0x10
mov al, byte [ebp + 0x14]
je 0x300e701e
test al, 2
je 0x300e704c
mov ecx, dword [edi + 4]
mov eax, dword [edi]
add eax, ecx
add ecx, 2
mov dword [edi + 4], ecx
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax]
push ecx
mov ecx, dword [esi + 0x2c]
call fcn.300e0cd0
mov edi, eax
test edi, edi
je 0x300e727b
cmp dword [edi + 0x78], 1
jne 0x300e727b
push 0x80
call fcn.3007a1f0
add esp, 4
test eax, eax
je 0x300e6fbf
mov edx, dword [esi + 0x2c]
push 0xff
push 0xc
push 0xfff4
push edx
mov ecx, eax
call fcn.300d03c0
mov dword [ebp + 0x18], eax
jmp 0x300e6fc6
mov dword [ebp + 0x18], 0
push 0x24
call fcn.3007a1f0
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x300e700e
push 0x50
call fcn.3007a1f0
add esp, 4
test eax, eax
je 0x300e7000
mov edx, dword [esi + 0xdc]
push edi
push edx
mov ecx, eax
call fcn.30089690
push edi
push 0
push eax
mov ecx, ebx
call fcn.30087860
jmp 0x300e7010
xor eax, eax
push edi
push eax
push eax
mov ecx, ebx
call fcn.30087860
jmp 0x300e7010
xor eax, eax
mov ecx, dword [ebp + 0x18]
mov dword [ecx], eax
mov eax, dword [ebp + 0x18]
or byte [eax + 0x7f], 1
jmp 0x300e7053
test al, 2
je 0x300e704c
mov ecx, dword [edi + 4]
mov eax, dword [edi]
add eax, ecx
add ecx, 2
xor edx, edx
mov dword [edi + 4], ecx
mov dh, byte [eax + 1]
mov ecx, dword [esi + 0x2c]
mov dl, byte [eax]
push edx
call fcn.300e0cd0
test eax, eax
mov dword [ebp + 0x18], eax
je 0x300e727b
jmp 0x300e7053
mov dword [ebp + 0x18], 0
xor edi, edi
test byte [ebp + 0x14], 4
je 0x300e706c
lea eax, [ebp - 0xc8]
push eax
lea ecx, [esi + 4]
call fcn.300e1a80
jmp 0x300e708d
mov eax, dword [esi + 0x2c]
cmp eax, edi
je 0x300e707b
mov eax, dword [eax + 0xdc]
jmp 0x300e707d
xor eax, eax
push eax
lea ecx, [ebp - 0xc8]
push ecx
call fcn.300783d0
add esp, 8
test byte [ebp + 0x14], 8
je 0x300e70a6
push 1
lea edx, [ebp - 0xac]
push edx
lea ecx, [esi + 4]
call fcn.300e1bd0
jmp 0x300e70b1
lea ecx, [ebp - 0xac]
call fcn.300ad070
mov dl, byte [ebp + 0x14]
test dl, 0x10
je 0x300e70d4
mov ecx, dword [esi + 8]
mov eax, dword [esi + 4]
add eax, ecx
add ecx, 2
mov dword [esi + 8], ecx
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax]
mov word [ebp + 0x24], cx
jmp 0x300e70d8
mov word [ebp + 0x24], di
test dl, 0x20
je 0x300e711b
mov edi, dword [esi + 4]
mov ebx, dword [esi + 8]
mov eax, dword [esi + 0x2c]
mov ecx, dword [eax + 0xdc]
add edi, ebx
push edi
lea edx, [ebp + 0x58]
push edx
call fcn.30101cc0
mov eax, dword [eax]
mov dword [ebp + 0x2c], eax
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x300e7102
mov ecx, dword [esi + 8]
sub eax, edx
mov dl, byte [ebp + 0x14]
inc eax
add ecx, eax
mov dword [esi + 8], ecx
xor edi, edi
jmp 0x300e712d
mov ecx, dword [esi + 0x2c]
mov eax, dword [ecx + 0xdc]
mov ecx, dword [eax + 0xc3c]
mov dword [ebp + 0x2c], ecx
test dl, 0x40
je 0x300e714d
mov ecx, dword [esi + 8]
mov eax, dword [esi + 4]
add eax, ecx
add ecx, 2
mov dword [esi + 8], ecx
xor ecx, ecx
mov ch, byte [eax + 1]
mov cl, byte [eax]
mov word [ebp + 0x26], cx
jmp 0x300e7151
mov word [ebp + 0x26], di
mov ecx, dword [ebp + 0x14]
test ch, 1
je 0x300e7187
push 0xc
call fcn.3007a1f0
add esp, 4
cmp eax, edi
je 0x300e7171
mov dword [eax + 4], edi
mov dword [eax], edi
mov dword [eax + 8], edi
jmp 0x300e7173
xor eax, eax
lea edx, [esi + 4]
push edx
mov ecx, eax
mov dword [ebp + 0x48], eax
call fcn.30083dc0
mov dl, byte [ebp + 0x14]
mov ecx, dword [ebp + 0x14]
test ch, 2
je 0x300e719e
mov eax, dword [esi + 8]
mov ebx, dword [esi + 4]
mov bl, byte [eax + ebx]
inc eax
mov byte [ebp + 0x45], bl
mov dword [esi + 8], eax
jmp 0x300e71a2
mov byte [ebp + 0x45], 1
test ch, 4
je 0x300e71b9
mov eax, dword [esi + 8]
mov ecx, dword [esi + 4]
mov cl, byte [eax + ecx]
inc eax
mov byte [ebp + 0x4c], cl
mov dword [esi + 8], eax
jmp 0x300e71bd
mov byte [ebp + 0x4c], 0
test dl, dl
jns 0x300e71f1
mov eax, dword [esi + 0x2c]
mov ecx, dword [eax + 0xc0]
mov eax, dword [ecx + 0x34]
mov cl, byte [eax + 0x50]
test cl, cl
jne 0x300e71f1
mov eax, dword [esi + 8]
mov ecx, dword [esi + 4]
add ecx, eax
mov dword [ebp + 0x30], ecx
mov ecx, dword [esi + 0x14]
sub ecx, eax
mov dword [ebp + 0x34], ecx
mov ecx, dword [esi + 0x3c]
add ecx, eax
mov dword [ebp + 0x40], ecx
jmp 0x300e71f7
mov dword [ebp + 0x30], edi
mov dword [ebp + 0x34], edi
mov eax, dword [esi + 0x2c]
mov ecx, dword [eax + 0x218]
cmp ecx, edi
jne 0x300e722c
mov eax, dword [eax + 0x54]
cmp eax, edi
je 0x300e7227
mov ecx, dword [eax + 8]
cmp ecx, edi
je 0x300e7227
call fcn.300d1910
mov dl, byte [ebp + 0x14]
xor ecx, ecx
cmp eax, 5
setle cl
dec ecx
and ecx, eax
jmp 0x300e722c
mov ecx, 9
test dl, 1
mov dword [ebp + 0x3c], ecx
je 0x300e7249
mov eax, dword [esi + 0x54]
mov ecx, dword [esi + 0x50]
lea edx, [ebp - 0xc8]
push edx
push eax
call fcn.300bbef0
jmp 0x300e725c
mov edx, dword [esi + 0x54]
lea ecx, [ebp - 0xc8]
push ecx
mov ecx, dword [esi + 0x50]
push edx
call fcn.300be840
mov eax, dword [ebp + 0x14]
test ah, 1
je 0x300e727b
mov ecx, dword [ebp + 0x48]
cmp ecx, edi
mov esi, ecx
je 0x300e727b
call fcn.30083d50
push esi
call fcn.30208320
add esp, 4
pop edi
pop esi
pop ebx
add ebp, 0x74
mov esp, ebp
pop ebp
ret 4