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

Disassembly:
sub esp, 0x990
push ebx
push esi
mov esi, ecx
push edi
push 0
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
call fcn.03e3d480
mov eax, dword [esi]
xor ecx, ecx
mov dword [esp + 0x88], 0x100e1aac
mov dword [esp + 0x8c], 0x100e1ab8
mov dword [esp + 0x90], 0x100e1ac4
mov word [eax], cx
lea eax, [esp + 0xc]
push eax
mov dword [esp + 0x98], 0x100e1ad0
mov dword [esp + 0x9c], 0x100e1adc
call dword [0x100df158]
xor eax, eax
cmp eax, 0x100e1ae8
je 0x3e49775
mov ebx, dword [esi + 4]
xor edi, edi
mov eax, 0x100e1ae8
lea eax, [eax + 2]
xor ecx, ecx
lea edi, [edi + 1]
cmp cx, word [eax]
jne 0x3e49742
lea eax, [edi + ebx]
mov ecx, esi
push eax
call fcn.03e3d480
lea eax, [edi*2 + 2]
push eax
mov eax, dword [esi]
push 0x100e1ae8
lea eax, [eax + ebx*2]
push eax
call fcn.03f0f910
add esp, 0xc
movzx eax, word [esp + 0xc]
push ebp
mov ebp, dword [0x100df308]
push eax
lea eax, [esp + 0x1a4]
push 0x100e1b0c
push eax
call ebp
lea ecx, [esp + 0x1ac]
mov edx, 0x100e1b00
test ecx, ecx
mov eax, ecx
cmove eax, edx
push eax
lea eax, [esp + 0x90]
push eax
call fcn.03e76760
add esp, 0x14
mov ecx, esi
push dword [eax]
call fcn.03e3e2b0
mov eax, dword [esp + 0x80]
test eax, eax
je 0x3e497f3
push eax
call fcn.03f03820
add esp, 4
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
xor eax, eax
cmp eax, 0x100e1af0
je 0x3e49839
mov ebx, dword [esi + 4]
xor edi, edi
mov eax, 0x100e1af0
lea eax, [eax + 2]
xor ecx, ecx
lea edi, [edi + 1]
cmp cx, word [eax]
jne 0x3e49806
lea eax, [edi + ebx]
mov ecx, esi
push eax
call fcn.03e3d480
lea eax, [edi*2 + 2]
push eax
mov eax, dword [esi]
push 0x100e1af0
lea eax, [eax + ebx*2]
push eax
call fcn.03f0f910
add esp, 0xc
movzx eax, word [esp + 0x12]
push eax
lea eax, [esp + 0x5a4]
push 0x100e1b0c
push eax
call ebp
lea ecx, [esp + 0x5ac]
mov eax, ecx
test ecx, ecx
mov ecx, 0x100e1b00
cmove eax, ecx
push eax
lea eax, [esp + 0x3c]
push eax
call fcn.03e76760
add esp, 0x14
mov ecx, esi
push dword [eax]
call fcn.03e3e2b0
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x3e498a1
push eax
call fcn.03f03820
add esp, 4
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
xor eax, eax
cmp eax, 0x100e1af0
je 0x3e498e7
mov ebx, dword [esi + 4]
xor edi, edi
mov eax, 0x100e1af0
lea eax, [eax + 2]
xor ecx, ecx
lea edi, [edi + 1]
cmp cx, word [eax]
jne 0x3e498b4
lea eax, [edi + ebx]
mov ecx, esi
push eax
call fcn.03e3d480
lea eax, [edi*2 + 2]
push eax
mov eax, dword [esi]
push 0x100e1af0
lea eax, [eax + ebx*2]
push eax
call fcn.03f0f910
add esp, 0xc
movzx eax, word [esp + 0x16]
push eax
lea eax, [esp + 0x3a4]
push 0x100e1b0c
push eax
call ebp
lea ecx, [esp + 0x3ac]
mov eax, ecx
test ecx, ecx
mov ecx, 0x100e1b00
cmove eax, ecx
push eax
lea eax, [esp + 0x6c]
push eax
call fcn.03e76760
add esp, 0x14
mov ecx, esi
push dword [eax]
call fcn.03e3e2b0
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x3e4994f
push eax
call fcn.03f03820
add esp, 4
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
xor eax, eax
cmp eax, 0x100e1af4
je 0x3e49995
mov ebx, dword [esi + 4]
xor edi, edi
mov eax, 0x100e1af4
lea eax, [eax + 2]
xor ecx, ecx
lea edi, [edi + 1]
cmp cx, word [eax]
jne 0x3e49962
lea eax, [edi + ebx]
mov ecx, esi
push eax
call fcn.03e3d480
lea eax, [edi*2 + 2]
push eax
mov eax, dword [esi]
push 0x100e1af4
lea eax, [eax + ebx*2]
push eax
call fcn.03f0f910
add esp, 0xc
movzx eax, word [esp + 0x18]
push eax
lea eax, [esp + 0x7a4]
push 0x100e1b0c
push eax
call ebp
lea ecx, [esp + 0x7ac]
mov eax, ecx
test ecx, ecx
mov ecx, 0x100e1b00
cmove eax, ecx
push eax
lea eax, [esp + 0x54]
push eax
call fcn.03e76760
add esp, 0x14
mov ecx, esi
push dword [eax]
call fcn.03e3e2b0
mov eax, dword [esp + 0x44]
test eax, eax
je 0x3e499fd
push eax
call fcn.03f03820
add esp, 4
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
xor eax, eax
cmp eax, 0x100e1af8
je 0x3e49a43
mov ebx, dword [esi + 4]
xor edi, edi
mov eax, 0x100e1af8
lea eax, [eax + 2]
xor ecx, ecx
lea edi, [edi + 1]
cmp cx, word [eax]
jne 0x3e49a10
lea eax, [edi + ebx]
mov ecx, esi
push eax
call fcn.03e3d480
lea eax, [edi*2 + 2]
push eax
mov eax, dword [esi]
push 0x100e1af8
lea eax, [eax + ebx*2]
push eax
call fcn.03f0f910
add esp, 0xc
movzx eax, word [esp + 0x1a]
push eax
lea eax, [esp + 0xa4]
push 0x100e1b0c
push eax
call ebp
lea ecx, [esp + 0xac]
mov eax, ecx
test ecx, ecx
mov ecx, 0x100e1b00
cmove eax, ecx
push eax
lea eax, [esp + 0x84]
push eax
call fcn.03e76760
add esp, 0x14
mov ecx, esi
push dword [eax]
call fcn.03e3e2b0
mov eax, dword [esp + 0x74]
test eax, eax
je 0x3e49aae
push eax
call fcn.03f03820
add esp, 4
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
xor eax, eax
cmp eax, 0x100e1af8
je 0x3e49af4
mov ebx, dword [esi + 4]
xor edi, edi
mov eax, 0x100e1af8
lea eax, [eax + 2]
xor ecx, ecx
lea edi, [edi + 1]
cmp cx, word [eax]
jne 0x3e49ac1
lea eax, [edi + ebx]
mov ecx, esi
push eax
call fcn.03e3d480
lea eax, [edi*2 + 2]
push eax
mov eax, dword [esi]
push 0x100e1af8
lea eax, [eax + ebx*2]
push eax
call fcn.03f0f910
add esp, 0xc
movzx eax, word [esp + 0x1c]
push eax
lea eax, [esp + 0x2a4]
push 0x100e1b0c
push eax
call ebp
lea ecx, [esp + 0x2ac]
mov eax, ecx
test ecx, ecx
mov ecx, 0x100e1b00
cmove eax, ecx
push eax
lea eax, [esp + 0x30]
push eax
call fcn.03e76760
add esp, 0x14
mov ecx, esi
push dword [eax]
call fcn.03e3e2b0
mov eax, dword [esp + 0x20]
test eax, eax
je 0x3e49b5c
push eax
call fcn.03f03820
add esp, 4
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 0
xor eax, eax
cmp eax, 0x100e09bc
je 0x3e49ba3
mov ebx, dword [esi + 4]
xor edi, edi
mov eax, 0x100e09bc
nop
lea eax, [eax + 2]
xor ecx, ecx
lea edi, [edi + 1]
cmp cx, word [eax]
jne 0x3e49b70
lea eax, [edi + ebx]
mov ecx, esi
push eax
call fcn.03e3d480
lea eax, [edi*2 + 2]
push eax
mov eax, dword [esi]
push 0x100e09bc
lea eax, [eax + ebx*2]
push eax
call fcn.03f0f910
add esp, 0xc
movzx eax, word [esp + 0x1e]
push eax
lea eax, [esp + 0x4a4]
push 0x100e1b0c
push eax
call ebp
lea ecx, [esp + 0x4ac]
mov eax, ecx
test ecx, ecx
mov ecx, 0x100e1b00
cmove eax, ecx
push eax
lea eax, [esp + 0x48]
push eax
call fcn.03e76760
add esp, 0x14
mov ecx, esi
push dword [eax]
call fcn.03e3e2b0
mov eax, dword [esp + 0x38]
test eax, eax
je 0x3e49c0b
push eax
call fcn.03f03820
add esp, 4
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
xor eax, eax
cmp eax, 0x100e1af4
je 0x3e49c53
mov ebx, dword [esi + 4]
xor edi, edi
mov eax, 0x100e1af4
mov edi, edi
lea eax, [eax + 2]
xor ecx, ecx
lea edi, [edi + 1]
cmp cx, word [eax]
jne 0x3e49c20
lea eax, [edi + ebx]
mov ecx, esi
push eax
call fcn.03e3d480
lea eax, [edi*2 + 2]
push eax
mov eax, dword [esi]
push 0x100e1af4
lea eax, [eax + ebx*2]
push eax
call fcn.03f0f910
add esp, 0xc
call dword [0x100df248]
push eax
lea eax, [esp + 0x6a4]
push 0x100e1b0c
push eax
call ebp
lea ecx, [esp + 0x6ac]
mov eax, ecx
test ecx, ecx
mov ecx, 0x100e1b00
cmove eax, ecx
push eax
lea eax, [esp + 0x60]
push eax
call fcn.03e76760
add esp, 0x14
mov ecx, esi
push dword [eax]
call fcn.03e3e2b0
mov eax, dword [esp + 0x50]
test eax, eax
je 0x3e49cbc
push eax
call fcn.03f03820
add esp, 4
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x58], 0
xor eax, eax
cmp eax, 0x100e1af8
je 0x3e49d03
mov ebx, dword [esi + 4]
xor edi, edi
mov eax, 0x100e1af8
nop
lea eax, [eax + 2]
xor ecx, ecx
lea edi, [edi + 1]
cmp cx, word [eax]
jne 0x3e49cd0
lea eax, [edi + ebx]
mov ecx, esi
push eax
call fcn.03e3d480
lea eax, [edi*2 + 2]
push eax
mov eax, dword [esi]
push 0x100e1af8
lea eax, [eax + ebx*2]
push eax
call fcn.03f0f910
add esp, 0xc
call dword [0x100df284]
push eax
lea eax, [esp + 0x8a4]
push 0x100e1b0c
push eax
call ebp
lea ecx, [esp + 0x8ac]
mov eax, ecx
test ecx, ecx
mov ecx, 0x100e1b00
cmove eax, ecx
push eax
lea eax, [esp + 0x78]
push eax
call fcn.03e76760
add esp, 0x14
mov ecx, esi
push dword [eax]
call fcn.03e3e2b0
mov eax, dword [esp + 0x68]
pop ebp
test eax, eax
je 0x3e49d6d
push eax
call fcn.03f03820
add esp, 4
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
xor eax, eax
cmp eax, 0x100e1af4
je 0x3e49db3
mov ebx, dword [esi + 4]
xor edi, edi
mov eax, 0x100e1af4
lea eax, [eax + 2]
xor ecx, ecx
lea edi, [edi + 1]
cmp cx, word [eax]
jne 0x3e49d80
lea eax, [edi + ebx]
mov ecx, esi
push eax
call fcn.03e3d480
lea eax, [edi*2 + 2]
push eax
mov eax, dword [esi]
push 0x100e1af4
lea eax, [eax + ebx*2]
push eax
call fcn.03f0f910
add esp, 0xc
push dword [esp + 0x9a4]
mov ecx, esi
call fcn.03e3e2b0
xor eax, eax
cmp eax, 0x100e1af8
je 0x3e49e07
mov ebx, dword [esi + 4]
xor edi, edi
mov eax, 0x100e1af8
lea eax, [eax + 2]
xor ecx, ecx
lea edi, [edi + 1]
cmp cx, word [eax]
jne 0x3e49dd4
lea eax, [edi + ebx]
mov ecx, esi
push eax
call fcn.03e3d480
lea eax, [edi*2 + 2]
push eax
mov eax, dword [esi]
push 0x100e1af8
lea eax, [eax + ebx*2]
push eax
call fcn.03f0f910
add esp, 0xc
mov eax, dword [esp + 0x9a0]
mov ecx, esi
push dword [esp + eax*4 + 0x88]
call fcn.03e3e2b0
xor eax, eax
cmp eax, 0x100e1af4
je 0x3e49e63
mov ebx, dword [esi + 4]
xor edi, edi
mov eax, 0x100e1af4
nop
lea eax, [eax + 2]
xor ecx, ecx
lea edi, [edi + 1]
cmp cx, word [eax]
jne 0x3e49e30
lea eax, [edi + ebx]
mov ecx, esi
push eax
call fcn.03e3d480
lea eax, [edi*2 + 2]
push eax
mov eax, dword [esi]
push 0x100e1af4
lea eax, [eax + ebx*2]
push eax
call fcn.03f0f910
add esp, 0xc
pop edi
mov eax, esi
pop esi
pop ebx
add esp, 0x990
ret 8