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

Disassembly:
sub esp, 0x64
mov eax, dword [esp + 0x70]
push ebx
mov ebx, dword [esp + 0x70]
push esi
mov esi, dword [eax]
push edi
mov edi, dword [ebx*4 + 0x343e4fe0]
or ecx, 0xffffffff
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], esi
mov dword [esp + 0x1c], edi
cmp esi, 0x800
jae 0x342a902b
cmp esi, dword [0x343e53e4]
jb 0x342a902b
imul esi, esi, 0x64
xor eax, eax
add esi, 0x343b01c0
cmp edi, eax
je 0x3420914d
mov dword [esi + 0x10], ebx
mov edx, dword [edi + 0xe8]
mov dword [esi + 0x48], edx
mov edx, dword [edi + 0xe4]
and dword [esi + 0x60], 0xfffffffe
and edx, 0xfffdffff
mov dword [esi + 0x44], edx
xor edx, edx
mov word [esi + 0x4c], dx
mov word [esi + 0x4e], dx
mov dword [esi + 0x54], ecx
mov dword [esi + 0x50], ecx
mov dword [esi + 0x58], eax
mov dword [esi + 0x34], eax
mov eax, dword [edi + 0xe4]
test al, 0x20
jne 0x3420914d
test eax, 0x8000
jne 0x342a8b0e
test byte [esi + 0x44], 1
jne 0x342a8b17
pop edi
pop esi
xor eax, eax
pop ebx
add esp, 0x64
ret 0x14
or dword [esi + 0x44], 1
jmp 0x34209143
mov eax, dword [esp + 0x84]
and eax, reloc.OLEAUT32.dll_SysReAllocStringLen
push ebp
mov ebp, dword [esp + 0x84]
mov dword [esp + 0x1c], eax
jne 0x342a8b6d
push ebp
call fcn.34262701
test eax, eax
je 0x342a8b6d
test byte [edi + 0xe4], 0x10
jne 0x342a8b6d
mov eax, dword [esp + 0x78]
push 0
push 0
push 0
push 0xffffddd9
push 0
push 0
push ebp
push eax
call fcn.3421474d
pop ebp
pop edi
pop esi
mov eax, 0xffffb137
pop ebx
add esp, 0x64
ret 0x14
lea ecx, [esp + 0x78]
push ecx
push ebp
mov ebp, dword [esp + 0x80]
push 0x34226578
push ebx
push ebp
call fcn.3431af85
test eax, eax
jl 0x342a8cca
cmp dword [esp + 0x78], 0
jne 0x342a8cd4
mov edx, dword [esp + 0x84]
push edx
call fcn.34262701
test eax, eax
jne 0x342a8cc8
mov eax, dword [esp + 0x84]
push eax
call fcn.3426cc50
test eax, eax
jne 0x342a8cc8
test dword [edi + 0xe4], 0x80000
jne 0x342a8cc8
push ebx
push ebp
call fcn.3426cee8
test eax, eax
jl 0x342a8cca
mov edx, dword [edi + 0x14]
push 0
lea ecx, [esp + 0x18]
push ecx
push edx
push ebp
call fcn.3420c06b
test eax, eax
jl 0x342a8cca
mov eax, dword [esp + 0x14]
push 0x3426c278
push eax
push ebp
call fcn.3420baf8
mov edi, eax
test edi, edi
jl 0x342a8c42
mov edi, dword [esp + 0x84]
push 1
push edi
call fcn.341fd760
mov ecx, dword [esp + 0x18]
push eax
push edi
push ecx
push ebp
call fcn.3420bd9a
mov edi, eax
test edi, edi
jl 0x342a8c42
mov edx, dword [esp + 0x14]
push 1
push edx
push ebp
call fcn.3420beef
mov edi, eax
mov eax, dword [esp + 0x14]
push eax
push ebp
call fcn.34207940
mov dword [esp + 0x14], 0xffffffff
cmp edi, 0xfffff9bf
je 0x342a8cc8
test edi, edi
jl 0x342a8ecc
mov ecx, dword [esp + 0x10]
mov edi, dword [esp + 0x80]
push 0x34227410
push ecx
push edi
push ebp
call fcn.342065ad
test eax, eax
jl 0x342a8cca
mov eax, dword [edi]
mov edx, dword [esi + 0x44]
imul eax, eax, 0x64
or edx, 0x2000
mov dword [eax + 0x343b0204], edx
mov ecx, dword [edi]
mov edx, dword [esi + 0x10]
imul ecx, ecx, 0x64
mov dword [ecx + 0x343b01d0], edx
mov eax, dword [edi]
imul eax, eax, 0x64
or dword [eax + 0x343b0220], 1
lea eax, [eax + 0x343b0220]
mov eax, dword [edi]
or dword [esi + 0x60], 1
mov dword [esi + 0x50], eax
mov ecx, dword [edi]
push 1
push ecx
call fcn.3431cf89
xor eax, eax
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x64
ret 0x14
mov edi, dword [esp + 0x10]
push 1
push 0x38
lea edx, [esp + 0x44]
push edx
push 0
push edi
push ebp
call fcn.342066df
test eax, eax
jl 0x342a8cca
lea eax, [esp + 0x3c]
push eax
push edi
push ebp
call fcn.34316e23
mov edi, eax
test edi, edi
jl 0x342a8ebd
cmp dword [esp + 0x1c], 0
jne 0x342a8d3d
mov eax, dword [esi + 0x44]
test al, al
jns 0x342a8d3d
test al, 0x10
jne 0x342a8d3d
mov ecx, dword [esp + 0x84]
push 0
push 0
push 0
push 0xffffe016
push 0
push 0
push ecx
push ebp
call fcn.3421474d
mov edi, 0xfffff88d
jmp 0x342a8ebd
mov edi, dword [esp + 0x84]
or dword [esi + 0x44], 8
lea edx, [esp + 0x78]
push edx
push edi
push 0x34226578
push ebx
push ebp
call fcn.34319447
test eax, eax
jl 0x342a8cca
cmp dword [esp + 0x78], 0
je 0x342a8d70
or dword [esi + 0x44], 0x20000
push esi
push edi
push ebx
push ebp
call fcn.3431a59e
mov edi, eax
test edi, edi
jl 0x342a8ebd
mov ecx, dword [esp + 0x10]
push 0
push 0x18
lea eax, [esp + 0x2c]
push eax
push 0x3426c488
push ecx
push ebp
call fcn.342066df
mov edi, eax
test edi, edi
jl 0x342a8ebd
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x28]
push 0
push 0x18
lea eax, [esp + 0x2c]
push eax
push 0x3426c034
push ecx
push ebp
mov dword [esi + 0x20], edx
call fcn.342066df
mov edi, eax
test edi, edi
jl 0x342a8ebd
test dword [esi + 0x44], 0x20000
mov edx, dword [esp + 0x28]
mov dword [esi + 0x18], edx
je 0x342a8dff
mov eax, dword [esp + 0x84]
mov ecx, dword [esp + 0x10]
push eax
push esi
push ecx
push ebx
push ebp
call fcn.3431d068
mov edi, eax
test edi, edi
jl 0x342a8ebd
push 8
push 4
lea edx, [esp + 0x20]
push edx
push ebx
push ebp
call fcn.34204df7
mov edi, eax
test edi, edi
jl 0x342a8ebd
push 8
push 4
lea eax, [esp + 0x20]
push eax
push ebx
push ebp
call fcn.34204df7
mov edi, eax
test edi, edi
jl 0x342a8ebd
cmp dword [esp + 0x18], 0x30000
jbe 0x342a8e6c
cmp dword [esp + 0x78], 0
je 0x342a8e6c
mov edx, dword [esp + 0x10]
push 0
push 0x18
lea ecx, [esp + 0x2c]
push ecx
push 0x342d97d8
push edx
push ebp
call fcn.342066df
mov edi, eax
test edi, edi
jl 0x342a8ebd
mov eax, dword [esp + 0x28]
mov dword [esi + 0x1c], eax
jmp 0x342a8e73
mov dword [esi + 0x1c], 0xffffffff
movzx eax, word [esi + 0x4c]
test ax, ax
jbe 0x342a8ebd
movzx ecx, ax
add ecx, ecx
add ecx, ecx
add ecx, ecx
push ecx
call sub.MSO.dll_Ordinal_1880
mov dword [esi + 0x38], eax
test eax, eax
jne 0x342a8ea1
pop ebp
pop edi
pop esi
mov eax, 0xfffffc0d
pop ebx
add esp, 0x64
ret 0x14
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x3c]
push edx
mov edx, dword [esp + 0x88]
push ecx
push edx
push eax
push ebx
push ebp
call fcn.34317110
mov edi, eax
mov eax, dword [esp + 0x40]
push eax
push ebp
call fcn.34207940
test edi, edi
jge 0x342a8ed8
pop ebp
mov eax, edi
pop edi
pop esi
pop ebx
add esp, 0x64
ret 0x14
mov edi, dword [esp + 0x88]
and edi, 4
jne 0x342a8f16
test byte [esi + 0x44], 0x40
je 0x342a8f0c
mov edx, dword [esp + 0x84]
lea ecx, [esp + 0x7c]
push ecx
push edx
push ebx
push ebp
call fcn.3431cfb0
test eax, eax
jge 0x342a8f1e
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x64
ret 0x14
mov dword [esp + 0x7c], 1
jmp 0x342a8f1e
mov dword [esp + 0x7c], 0
test edi, edi
jne 0x342a8f4a
test byte [esi + 0x44], 0x40
je 0x342a8f4a
mov eax, dword [esp + 0x84]
mov edi, dword [esp + 0x10]
push eax
push edi
push ebx
push ebp
call fcn.34317369
test eax, eax
jge 0x342a8f4e
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x64
ret 0x14
mov edi, dword [esp + 0x10]
mov ecx, dword [esp + 0x7c]
push ecx
push edi
call fcn.3431cf89
mov edx, dword [esp + 0x20]
test byte [edx + 0xe4], 0x10
jne 0x342a8cc8
push 0x34227338
push edi
mov edi, dword [esp + 0x88]
push edi
push ebp
call fcn.342065ad
test eax, eax
jl 0x342a8cca
mov ecx, dword [edi]
mov eax, dword [esi + 0x44]
imul ecx, ecx, 0x64
or eax, 0x2000
mov dword [ecx + 0x343b0204], eax
mov edx, dword [edi]
mov eax, dword [esi + 0x10]
imul edx, edx, 0x64
mov dword [edx + 0x343b01d0], eax
mov eax, dword [edi]
mov ecx, dword [esi]
imul eax, eax, 0x64
add eax, 0x343b01c0
mov dword [eax], ecx
mov edx, dword [esi + 4]
mov dword [eax + 4], edx
mov ecx, dword [esi + 8]
mov dword [eax + 8], ecx
mov edx, dword [esi + 0xc]
mov dword [eax + 0xc], edx
mov eax, dword [edi]
mov ecx, dword [esi + 0x18]
imul eax, eax, 0x64
mov dword [eax + 0x343b01d8], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x1c]
imul edx, edx, 0x64
mov dword [edx + 0x343b01dc], eax
mov ecx, dword [edi]
mov edx, dword [esi + 0x14]
imul ecx, ecx, 0x64
mov dword [ecx + 0x343b01d4], edx
mov eax, dword [edi]
mov ecx, dword [esi + 0x20]
imul eax, eax, 0x64
mov dword [eax + 0x343b01e0], ecx
mov edx, dword [edi]
mov eax, dword [esi + 0x48]
imul edx, edx, 0x64
mov dword [edx + 0x343b0208], eax
mov ecx, dword [edi]
mov edx, dword [esp + 0x7c]
mov dword [esi + 0x50], ecx
mov eax, dword [edi]
push edx
push eax
call fcn.3431cf89
pop ebp
pop edi
pop esi
xor eax, eax
pop ebx
add esp, 0x64
ret 0x14
pop edi
pop esi
mov eax, 0xfffffae2
pop ebx
add esp, 0x64
ret 0x14