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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xa0
mov esi, ecx
mov eax, dword [ebp + 8]
mov ecx, dword [0x6e46000]
xor ecx, ebp
mov dword [esp + 0x98], ecx
mov dword [esi + 0x28], eax
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x20]
or eax, 4
push eax
push 0x6dbb108
call fcn.3848c650
test eax, eax
js 0x3848c16e
mov eax, dword [esi + 0x20]
mov ecx, esi
push dword [eax + 0xc]
push dword [eax + 8]
call fcn.38415910
mov ecx, esi
call fcn.3848bf90
test eax, eax
js 0x3848c17d
mov dword [esp + 0x10], 0
mov eax, dword [esi + 0x20]
mov eax, dword [eax + 8]
mov dword [esp + 8], 0x6b0bb60
mov edx, dword [esp + 8]
lea edi, [esp + 0x10]
mov ecx, esi
push edi
push edx
push eax
call fcn.3848beb0
test eax, eax
js 0x3848c23c
mov ecx, esi
call fcn.38414e50
mov ebx, eax
test eax, eax
jns 0x3848c0e0
push ebx
push 0x6e3c780
push 2
push esi
call fcn.38415530
add esp, 0x10
mov ecx, esi
call fcn.384151b0
mov ebx, eax
test eax, eax
js 0x3848c2ca
mov dword [esp + 4], ebx
lea ecx, [esp + 0x10]
call fcn.3862bbc0
mov edi, dword [esi]
lea eax, [esi + 4]
mov dword [esp], eax
cmp edi, eax
je 0x3848c18c
lea ebx, [esp + 0x10]
jmp 0x3848c117
mov edi, eax
cmp eax, dword [esp]
je 0x3848c18c
lea eax, [edi + 0x10]
mov ecx, ebx
push 4
push eax
call fcn.3862c350
lea eax, [edi + 0x18]
mov ecx, ebx
push 0x10
push eax
call fcn.3862c350
mov ecx, dword [edi + 4]
test ecx, ecx
je 0x3848c150
nop
nop
nop
nop
nop
nop
nop
nop
mov eax, ecx
mov ecx, dword [ecx]
test ecx, ecx
jne 0x3848c140
jmp 0x3848c110
mov eax, dword [edi + 8]
cmp dword [eax], edi
je 0x3848c110
add edi, 8
nop
nop
nop
nop
nop
nop
mov ecx, dword [edi]
lea edi, [ecx + 8]
mov eax, dword [ecx + 8]
cmp dword [eax], ecx
jne 0x3848c160
jmp 0x3848c110
mov ebx, eax
push eax
push 0x6e3c7dd
push 4
jmp 0x3848c535
mov ebx, eax
push eax
push 0x6e3c7c6
push 4
jmp 0x3848c535
lea ebx, [esp + 0x78]
lea edi, [esp + 0x10]
mov ecx, edi
push ebx
call fcn.3862c3f0
test byte [esi + 0x14], 2
je 0x3848c3ce
mov dword [esp + 0x10], 0x5f756d65
xor eax, eax
movzx ecx, byte [esp + eax + 0x78]
mov edx, ecx
shr edx, 4
movzx edx, byte [edx + 0x6dbb110]
mov byte [esp + eax*2 + 0x14], dl
and ecx, 0xf
movzx ecx, byte [ecx + 0x6dbb110]
mov byte [esp + eax*2 + 0x15], cl
add eax, 1
cmp eax, 0x10
jne 0x3848c1b0
mov byte [esp + 0x34], 0
mov ecx, esi
push edi
call fcn.38415420
test al, al
je 0x3848c24b
push 0x6e43688
push 2
push esi
call fcn.38415530
add esp, 0xc
mov ecx, dword [esi + 0x1c]
push dword [esi + 0x14]
push edi
call fcn.3848c650
test eax, eax
js 0x3848c281
mov ecx, esi
push ebx
call fcn.3848cf60
mov edi, eax
push eax
push 0x6e3c80c
push 2
push esi
call fcn.38415530
add esp, 0x10
test edi, edi
js 0x3848c294
mov ebx, edi
cmp dword [esi + 0x68], 0
jne 0x3848c548
jmp 0x3848c5e9
mov ebx, eax
push eax
push 0x6e3c7af
push 4
jmp 0x3848c535
mov ecx, esi
push edi
push ebx
call fcn.3848c7d0
mov ebx, edi
mov edi, eax
push eax
push 0x6e3c890
push 2
push esi
call fcn.38415530
add esp, 0x10
test edi, edi
js 0x3848c283
mov ecx, dword [esi + 0x1c]
push dword [esi + 0x14]
push ebx
call fcn.3848c650
test eax, eax
lea ebx, [esp + 0x78]
jns 0x3848c20c
mov edi, eax
push edi
push 0x6e3c80c
push 2
push esi
call fcn.38415530
add esp, 0x10
mov edi, dword [esi + 0x1c]
mov eax, dword [edi]
test eax, eax
je 0x3848c2d5
cmp dword [edi + 4], 0
je 0x3848c2b2
lea edx, [edi + 4]
mov ecx, dword [edi + 0x10]
push edx
push eax
call fcn.384156f0
mov eax, dword [edi]
mov ecx, dword [edi + 0x10]
push eax
call fcn.38414d20
mov dword [edi + 8], 0
mov dword [edi], 0
jmp 0x3848c2f6
push ebx
push 0x6e3c798
jmp 0x3848c533
mov eax, dword [edi + 8]
test eax, eax
je 0x3848c2f6
mov ecx, dword [edi + 0x10]
push dword [edi + 0xc]
push eax
call fcn.384158e0
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
mov ecx, esi
lea ebx, [esp + 0x10]
push ebx
call fcn.38415580
mov ecx, esi
push ebx
lea eax, [esp + 0x7c]
push eax
call fcn.3848bd30
mov edi, eax
push eax
push 0x6e3c822
push 2
push esi
call fcn.38415530
add esp, 0x10
test edi, edi
js 0x3848c34c
mov ecx, dword [esi + 0x1c]
push dword [esi + 0x14]
push ebx
call fcn.3848c650
test eax, eax
js 0x3848c354
mov edi, ebx
mov ecx, esi
lea eax, [esp + 0x78]
push eax
call fcn.3848cf60
mov ebx, eax
test eax, eax
jns 0x3848c3b9
jmp 0x3848c356
mov eax, edi
mov edi, ebx
mov ebx, eax
jmp 0x3848c3b9
mov ebx, eax
mov edi, dword [esi + 0x1c]
mov eax, dword [edi]
test eax, eax
je 0x3848c38c
cmp dword [edi + 4], 0
je 0x3848c374
lea edx, [edi + 4]
mov ecx, dword [edi + 0x10]
push edx
push eax
call fcn.384156f0
mov eax, dword [edi]
mov ecx, dword [edi + 0x10]
push eax
call fcn.38414d20
mov dword [edi + 8], 0
mov dword [edi], 0
jmp 0x3848c3ad
mov eax, dword [edi + 8]
test eax, eax
je 0x3848c3ad
mov ecx, dword [edi + 0x10]
push dword [edi + 0xc]
push eax
call fcn.384158e0
mov dword [edi + 8], 0
mov dword [edi + 0xc], 0
mov ecx, esi
lea edi, [esp + 0x10]
push edi
call fcn.38415580
mov dword [esp + 4], ebx
push ebx
push 0x6e3c864
push 2
push esi
call fcn.38415530
add esp, 0x10
mov ebx, dword [esp + 4]
test ebx, ebx
js 0x3848c3e0
test byte [esi + 0x14], 2
jne 0x3848c53e
mov ebx, dword [esi]
cmp ebx, dword [esp]
je 0x3848c444
xor ecx, ecx
mov eax, 0x200
jmp 0x3848c3f7
mov ebx, edx
cmp edx, dword [esp]
je 0x3848c43e
add eax, dword [ebx + 0x20]
adc ecx, dword [ebx + 0x24]
mov edi, dword [ebx + 4]
test edi, edi
je 0x3848c420
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, edi
mov edi, dword [edi]
test edi, edi
jne 0x3848c410
jmp 0x3848c3f0
mov edx, dword [ebx + 8]
cmp dword [edx], ebx
je 0x3848c3f0
add ebx, 8
nop
nop
nop
nop
nop
nop
mov edi, dword [ebx]
lea ebx, [edi + 8]
mov edx, dword [edi + 8]
cmp dword [edx], edi
jne 0x3848c430
jmp 0x3848c3f0
lea edi, [esp + 0x10]
jmp 0x3848c449
mov eax, 0x200
mov ecx, dword [esi + 0x1c]
push eax
call fcn.3848d150
test eax, eax
js 0x3848c636
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0x200
mov dword [esp + 0x1c], 0
mov eax, dword [esi + 0x20]
mov eax, dword [eax + 8]
mov dword [esp + 0xc], 0x6b0aec0
mov edx, dword [esp + 0xc]
mov ecx, esi
push edi
push edx
push eax
call fcn.3848beb0
test eax, eax
js 0x3848c636
mov eax, dword [esp + 0x84]
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x80]
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov edi, dword [esi + 0x1c]
mov ebx, dword [esi + 0x24]
mov edi, dword [edi + 8]
mov dword [edi], ebx
mov dword [edi + 4], edx
mov dword [edi + 8], eax
mov dword [edi + 0xc], ecx
mov dword [edi + 0x10], 0x182f0005
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x8c]
mov dword [edi + 0x14], eax
mov dword [edi + 0x18], ecx
mov eax, dword [esp + 0x90]
mov dword [edi + 0x1c], eax
mov eax, dword [esp + 0x94]
mov dword [edi + 0x20], eax
mov ecx, esi
lea eax, [esp + 0x78]
push eax
call fcn.3848cf60
mov ebx, eax
push eax
push 0x6e3c87a
push 2
push esi
call fcn.38415530
add esp, 0x10
cmp dword [esi + 0x68], 0
je 0x3848c5e9
mov eax, dword [esi + 0x60]
test eax, eax
je 0x3848c561
nop
mov edi, dword [eax]
mov ecx, dword [esi + 0x64]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, edi
test edi, edi
jne 0x3848c550
mov dword [esi + 0x60], 0
mov edx, dword [esi + 0x58]
test edx, edx
je 0x3848c5e2
lea edi, [edx - 1]
mov eax, edx
and eax, 3
xor ecx, ecx
cmp edi, 3
jb 0x3848c5c2
and edx, 0xfffffffc
xor ecx, ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edi, dword [esi + 0x54]
mov dword [edi + ecx*4], 0
mov edi, dword [esi + 0x54]
mov dword [edi + ecx*4 + 4], 0
mov edi, dword [esi + 0x54]
mov dword [edi + ecx*4 + 8], 0
mov edi, dword [esi + 0x54]
mov dword [edi + ecx*4 + 0xc], 0
add ecx, 4
cmp edx, ecx
jne 0x3848c590
test eax, eax
je 0x3848c5e2
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov edx, dword [esi + 0x54]
mov dword [edx + ecx*4], 0
add ecx, 1
add eax, 0xffffffff
jne 0x3848c5d0
mov dword [esi + 0x68], 0
lea ecx, [esi + 0x30]
lea edi, [esi + 0x34]
push dword [esi + 0x34]
call fcn.3848db40
mov dword [esi + 0x3c], 0
mov dword [esi + 0x30], edi
mov dword [esi + 0x34], 0
test ebx, ebx
js 0x3848c61c
mov eax, dword [esi + 0x1c]
mov ecx, esi
push dword [eax + 0xc]
push dword [eax + 8]
call fcn.38415910
mov ecx, dword [esp + 0x98]
xor ecx, ebp
call 0x387310a4
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
mov ebx, eax
cmp dword [esi + 0x68], 0
jne 0x3848c548
jmp 0x3848c5e9