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

Disassembly:
sub esp, 0xc4
push ebx
mov ebx, dword [esp + 0xcc]
push esi
push edi
mov edi, dword [esp + 0xd8]
lea eax, [esp + 0x10]
push eax
push 0xe
xor esi, esi
push edi
push esi
push ebx
mov dword [esp + 0x30], 0xfcfcfcfc
mov dword [esp + 0x2c], esi
mov dword [esp + 0x24], esi
mov dword [esp + 0x38], esi
call fcn.34897f89
cmp eax, esi
jl 0x348c2d7d
mov ecx, dword [esp + 0x10]
push ebp
push ecx
call fcn.348969ef
xor eax, eax
lea edx, [esp + 0x1c]
push edx
push edi
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], eax
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], eax
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], eax
mov dword [esp + 0xd0], eax
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], eax
mov eax, dword [ebx + 0x114]
push esi
push eax
mov dword [esp + 0x2c], esi
mov dword [esp + 0x34], esi
mov dword [esp + 0x3c], esi
mov dword [esp + 0x54], eax
call fcn.348a4f05
mov edi, eax
cmp edi, esi
jl 0x348c2d8b
mov edx, dword [esp + 0x1c]
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x1c]
push ecx
push edx
call fcn.3489c7c1
mov edi, eax
cmp edi, esi
jl 0x348c2d8b
mov eax, dword [esp + 0x18]
cmp eax, esi
je 0x348c2d08
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx + 0xc]
lea ecx, [esp + 0x10]
push ecx
push 0x10207db
push eax
mov dword [esp + 0x48], edx
call fcn.34899c25
cmp byte [eax], 2
je 0x348c2cda
mov edx, dword [esp + 0x20]
push edx
call fcn.348969ef
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x10]
push eax
push 0x20107d9
push ecx
mov dword [esp + 0x34], 1
call fcn.34899c25
movzx edi, word [eax]
mov eax, dword [esp + 0x18]
lea edx, [esp + 0x10]
push edx
push 0xfffe07cf
push eax
mov dword [esp + 0x44], edi
call fcn.34899c25
movzx ecx, word [esp + 0x10]
push ecx
mov edx, ecx
push eax
shr edx, 3
push 0x348ca78c
mov dword [0x348ca7dc], edx
call sub.msvcr80.dll_memcpy
movzx eax, di
mov dword [esp + 0x40], eax
lea eax, [esp + eax*4 + 0x60]
add esp, 0xc
cmp dword [eax], esi
mov dword [esp + 0x4c], eax
jne 0x348c2ccc
mov eax, dword [esp + 0x18]
push 0x307dc
push eax
call fcn.34899d08
mov ecx, dword [esp + 0x18]
push 0x407dc
push ecx
mov ebp, eax
call fcn.34899d08
mov edx, dword [esp + 0x18]
push 0x507dc
push edx
mov dword [esp + 0x48], eax
call fcn.34899d08
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x18]
push 0x607dc
push eax
call fcn.34899d08
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x10]
push ecx
push 0xfffe07cf
push edx
mov edi, eax
call fcn.34899c25
movzx ebx, word [esp + 0x10]
mov ecx, dword [0x348ca260]
mov dword [esp + 0x30], eax
shr ebx, 3
lea eax, [ebx*8 + 0x18]
push eax
push ecx
call fcn.348c4fa9
cmp eax, esi
mov dword [esp + 0x24], eax
je 0x348c2cfe
mov esi, dword [eax]
xor eax, eax
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi + 8], eax
mov dword [esi + 0xc], eax
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], eax
movzx edx, word [esp + 0x10]
mov eax, dword [esp + 0x30]
push edx
push eax
lea ecx, [esi + 0x18]
push ecx
call sub.msvcr80.dll_memcpy
mov eax, dword [esp + 0x54]
mov dl, byte [esp + 0x44]
and edi, 1
add edi, edi
and eax, 1
or edi, eax
mov eax, dword [esp + 0x4c]
add edi, edi
and ebp, 1
or edi, ebp
and eax, 1
add edi, edi
or edi, eax
mov eax, dword [esi + 4]
add esp, 0xc
and eax, 0xfffffe1f
mov byte [esi], dl
mov edx, dword [esp + 0x24]
shl edi, 5
or edi, eax
lea ecx, [esp + 0x50]
push ecx
mov ecx, dword [esp + 0xe0]
push edx
mov edx, dword [esp + 0xe0]
mov byte [esi + 1], bl
mov dword [esi + 4], edi
mov eax, dword [esp + 0x1c]
push eax
push ecx
push edx
call fcn.348c45da
mov edi, eax
test edi, edi
jl 0x348c2d89
mov eax, dword [esp + 0x24]
mov ecx, dword [0x348ca260]
push eax
push ecx
call fcn.348c5004
xor esi, esi
cmp dword [esp + 0x50], esi
mov dword [esp + 0x24], esi
jne 0x348c2cc0
mov eax, dword [esp + 0x34]
lea edx, [eax + eax*4]
mov eax, dword [esp + 0x14]
mov dword [eax + edx*4 + 0x2c], esi
mov ecx, dword [esp + 0x14]
push ecx
call fcn.3489976e
mov edx, dword [esp + 0x20]
push edx
call fcn.34896a04
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x44]
push eax
push ecx
mov dword [esp + 0x30], esi
call fcn.348b8c3a
mov edi, eax
cmp edi, esi
jl 0x348c2d89
mov dword [esp + 0x2c], 1
jmp 0x348c2cda
mov edx, dword [esp + 0x4c]
mov dword [edx], 1
xor esi, esi
mov eax, dword [esp + 0x20]
push eax
call fcn.34896a04
mov dword [esp + 0x28], esi
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x1c]
push edx
push esi
push eax
call fcn.3489deb1
mov edi, eax
cmp edi, esi
jge 0x348c2a97
jmp 0x348c2d8b
mov edi, 0xfffffc0d
jmp 0x348c2d8b
cmp edi, esi
jl 0x348c2d8b
mov ecx, dword [esp + 0x1c]
push ecx
call fcn.3489c759
mov edi, eax
cmp edi, esi
jl 0x348c2d8b
mov eax, dword [esp + 0x14]
mov dword [esp + 0x1c], esi
xor edi, edi
lea ebx, [esp + 0x54]
mov ebp, 0x20
lea ecx, [ecx]
cmp dword [edi + eax + 0x2c], esi
je 0x348c2d4d
cmp dword [ebx], esi
jne 0x348c2d4d
mov dword [edi + eax + 0x2c], esi
mov edx, dword [esp + 0x14]
push edx
call fcn.3489976e
mov eax, dword [esp + 0x14]
add ebx, 4
add edi, 0x14
sub ebp, 1
jne 0x348c2d31
cmp dword [esp + 0x2c], esi
je 0x348c2d74
push 0x348ca648
push 1
call fcn.348c21a7
mov edi, eax
cmp edi, esi
jl 0x348c2d8b
mov eax, dword [esp + 0x14]
push eax
call fcn.34896a04
xor eax, eax
pop ebp
pop edi
pop esi
pop ebx
add esp, 0xc4
ret 8
xor esi, esi
mov eax, dword [esp + 0x14]
push eax
call fcn.34896a04
cmp dword [esp + 0x28], esi
je 0x348c2da5
mov ecx, dword [esp + 0x20]
push ecx
call fcn.34896a04
mov eax, dword [esp + 0x24]
cmp eax, esi
je 0x348c2dba
mov edx, dword [0x348ca260]
push eax
push edx
call fcn.348c5004
mov eax, dword [esp + 0x1c]
push eax
call fcn.3489c7aa
cmp eax, esi
jge 0x348c2dca
mov edi, eax
pop ebp
mov eax, edi
pop edi
pop esi
pop ebx
add esp, 0xc4
ret 8