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

Disassembly:
sub esp, 0x1cc
mov eax, dword [0x347765c8]
xor eax, esp
mov dword [esp + 0x1c8], eax
mov eax, dword [esp + 0x1dc]
mov ecx, dword [esp + 0x1ec]
push ebx
mov ebx, dword [esp + 0x1d4]
push ebp
mov ebp, dword [esp + 0x1e0]
push esi
push edi
mov edi, dword [esp + 0x1f4]
push 0x400004
mov dword [esp + 0x34], eax
or eax, 0xffffffff
push 0x34772580
mov dword [esp + 0x34], ecx
xor ecx, ecx
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x1ec]
lea edx, [esp + 0x18]
push edx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x30], ecx
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x60]
push eax
push ebx
call edx
mov esi, eax
test esi, esi
mov eax, dword [0x347efae8]
jge 0x347c7e9f
mov ecx, dword [eax + 0x108]
push ebx
call ecx
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0x104]
push 0
push 0
push 0
push 0xffffddef
push 0
push 0
push 0x34772580
push ebx
call eax
mov dword [esp + 0x10], 0xffffffff
jmp 0x347c82ba
mov edx, dword [esp + 0x1e4]
push 0x400004
push 0x34772638
lea ecx, [esp + 0x20]
push ecx
mov ecx, dword [eax + 0x60]
push edx
push ebx
call ecx
mov edx, dword [0x347efae8]
mov esi, eax
test esi, esi
jge 0x347c7f01
mov eax, dword [edx + 0x108]
push ebx
call eax
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x104]
push 0
push 0
push 0
push 0xffffddef
push 0
push 0
push 0x34772638
push ebx
call edx
mov dword [esp + 0x18], 0xffffffff
jmp 0x347c82a0
mov ecx, dword [esp + 0x10]
push 0
push 0x18
lea eax, [esp + 0x58]
push eax
mov eax, dword [edx + 0xbc]
push 0x34773008
push ecx
push ebx
call eax
mov esi, eax
test esi, esi
jl 0x347c82a0
mov ecx, dword [esp + 0x54]
mov eax, dword [esp + 0x10]
push 0
push 0x18
lea edx, [esp + 0x58]
push edx
push 0x34772ff4
mov dword [esp + 0x54], ecx
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0xbc]
push eax
push ebx
call edx
mov esi, eax
test esi, esi
jl 0x347c82a0
mov eax, dword [esp + 0x54]
mov edx, dword [esp + 0x10]
push 0
push 0x18
lea ecx, [esp + 0x58]
push ecx
push 0x347728b0
mov dword [esp + 0x58], eax
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0xbc]
push edx
push ebx
call ecx
mov esi, eax
test esi, esi
jl 0x347c82a0
mov edx, dword [esp + 0x54]
mov ecx, dword [esp + 0x10]
push 0
push 0x18
lea eax, [esp + 0x58]
push eax
push 0x3477301c
mov dword [esp + 0x5c], edx
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0xbc]
push ecx
push ebx
call eax
mov esi, eax
test esi, esi
jl 0x347c82a0
mov ecx, dword [esp + 0x54]
mov eax, dword [esp + 0x10]
push 0
push 0x18
lea edx, [esp + 0x58]
push edx
push 0x34773044
mov dword [esp + 0x4c], ecx
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0xbc]
push eax
push ebx
call edx
mov esi, eax
test esi, esi
jl 0x347c82a0
mov eax, dword [esp + 0x54]
mov edx, dword [esp + 0x1e4]
push 0x12
push 4
lea ecx, [esp + 0x3c]
push ecx
mov dword [esp + 0x4c], eax
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0x14]
push edx
push ebx
call ecx
mov esi, eax
test esi, esi
jl 0x347c82a0
cmp dword [esp + 0x1f0], 0x3d
jne 0x347c80a8
cmp dword [esp + 0x1f8], 0x20
jae 0x347c8042
mov esi, 0xfffffbf2
jmp 0x347c82a0
mov edx, dword [esp + 0x34]
mov dword [esp + 0x28], edi
mov ecx, 0x1e
mov esi, 0x347752a0
lea edi, [esp + 0x98]
rep movsd dword es:[edi], dword [esi]
lea eax, [esp + 0xa4]
mov ecx, 5
mov dword [eax], edx
add eax, 0x18
sub ecx, 1
jne 0x347c8069
lea edx, [esp + 0x68]
push edx
mov edx, dword [0x347efae8]
lea eax, [esp + 0x18]
push eax
mov eax, dword [edx + 0xe0]
push 0xd
push 5
lea ecx, [esp + 0xa8]
push ecx
push ebx
call eax
mov esi, eax
test esi, esi
jl 0x347c82a0
lea edi, [esp + 0x68]
jmp 0x347c8121
cmp dword [esp + 0x1f8], 0x28
jae 0x347c80bc
mov esi, 0xfffffbf2
jmp 0x347c82a0
mov edx, dword [esp + 0x34]
mov dword [esp + 0x24], edi
mov ecx, 0x2a
mov esi, 0x34775318
lea edi, [esp + 0x110]
rep movsd dword es:[edi], dword [esi]
lea eax, [esp + 0x11c]
mov ecx, 7
nop
mov dword [eax], edx
add eax, 0x18
sub ecx, 1
jne 0x347c80e4
lea ecx, [esp + 0x7c]
push ecx
mov ecx, dword [0x347efae8]
lea edx, [esp + 0x18]
push edx
mov edx, dword [ecx + 0xe0]
push 0xd
push 7
lea eax, [esp + 0x120]
push eax
push ebx
call edx
mov esi, eax
test esi, esi
jl 0x347c82a0
lea edi, [esp + 0x7c]
test ebp, ebp
je 0x347c8172
mov eax, dword [esp + 0x30]
test eax, eax
je 0x347c830a
lea ecx, [esp + 0x20]
push ecx
mov ecx, dword [esp + 0x1f4]
lea edx, [esp + 0x40]
push edx
mov edx, dword [esp + 0x1c]
push edi
push ecx
mov ecx, dword [esp + 0x20]
push eax
mov eax, dword [esp + 0x2c]
push ebp
push edx
mov edx, dword [esp + 0x200]
push eax
push ecx
push edx
push ebx
call fcn.347c75c0
mov esi, eax
test esi, esi
jl 0x347c82a0
jmp 0x347c8298
cmp dword [esp + 0x30], 0
jne 0x347c8298
mov ecx, dword [esp + 0x10]
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0x84]
push 0
push 0x80000000
push ecx
push ebx
call eax
mov esi, eax
test esi, esi
jne 0x347c828e
mov edi, edi
mov eax, dword [esp + 0x40]
push 0
push 0
lea ecx, [esp + 0x40]
push ecx
mov ecx, dword [esp + 0x1c]
push 0x10
lea edx, [esp + 0x1d8]
push edx
mov edx, dword [0x347efae8]
push eax
mov eax, dword [edx + 0x88]
push ecx
push ebx
call eax
mov esi, eax
test esi, esi
jl 0x347c82a0
test ebp, ebp
jne 0x347c8212
mov eax, dword [esp + 0x3c]
push ebp
push ebp
lea ecx, [esp + 0x40]
push ecx
mov ecx, dword [esp + 0x1c]
push 0x10
lea edx, [esp + 0x1c8]
push edx
mov edx, dword [0x347efae8]
push eax
mov eax, dword [edx + 0x88]
push ecx
push ebx
call eax
mov esi, eax
test esi, esi
jl 0x347c82a0
mov eax, dword [esp + 0x1f0]
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x40]
push edx
push edi
push eax
mov eax, dword [esp + 0x24]
lea ecx, [esp + 0x1d8]
push ecx
mov ecx, dword [esp + 0x2c]
lea edx, [esp + 0x1cc]
push edx
mov edx, dword [esp + 0x28]
push eax
mov eax, dword [esp + 0x200]
push ecx
push edx
push eax
push ebx
call fcn.347c75c0
mov esi, eax
test esi, esi
jge 0x347c8260
cmp esi, 0xffffb1d1
jne 0x347c82a0
mov ecx, dword [esp + 0x10]
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0x84]
push 0
push 1
push ecx
push ebx
call eax
mov esi, eax
test esi, esi
jge 0x347c8288
cmp esi, 0xfffff9bd
jne 0x347c82a0
test esi, esi
je 0x347c81a4
cmp esi, 0xfffff9bd
jne 0x347c8298
xor esi, esi
mov dword [esp + 0x1c], 0
mov eax, dword [esp + 0x10]
cmp eax, 0xffffffff
je 0x347c82ba
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x68]
push eax
push ebx
call edx
mov dword [esp + 0x1c], eax
test esi, esi
jne 0x347c82c2
mov esi, dword [esp + 0x1c]
mov eax, dword [esp + 0x18]
cmp eax, 0xffffffff
je 0x347c82db
push eax
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0x68]
push ebx
call ecx
mov dword [esp + 0x1c], eax
test esi, esi
jne 0x347c82e5
mov esi, dword [esp + 0x1c]
test esi, esi
jge 0x347c83ef
mov eax, dword [esp + 0x14]
cmp eax, 0xffffffff
je 0x347c84a5
mov edx, dword [0x347efae8]
push eax
mov eax, dword [edx + 0x68]
push ebx
call eax
jmp 0x347c84a5
mov eax, dword [esp + 0x10]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x74]
push 0x3477301c
push eax
push ebx
call edx
mov esi, eax
test esi, esi
jl 0x347c82a0
mov eax, dword [esp + 0x10]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x9c]
push 1
push 0x10
push ebp
push eax
push ebx
call edx
mov esi, eax
test esi, esi
jl 0x347c82a0
mov eax, dword [esp + 0x10]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0xa0]
push 1
push eax
push ebx
call edx
mov esi, eax
cmp esi, 0xfffff9bf
jne 0x347c8377
mov esi, 0xffffb1d1
jmp 0x347c82a0
test esi, esi
jl 0x347c82a0
mov ecx, dword [ebp + 4]
mov eax, dword [ebp]
mov edx, dword [ebp + 8]
push 1
push 0x10
mov dword [esp + 0x1c4], ecx
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x1c0], eax
mov eax, dword [ebp + 0xc]
push ebp
mov dword [esp + 0x1cc], edx
mov edx, dword [0x347efae8]
push ecx
mov dword [esp + 0x1d4], eax
mov eax, dword [edx + 0x9c]
push ebx
call eax
mov esi, eax
test esi, esi
jl 0x347c82a0
mov ecx, dword [esp + 0x10]
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0xa4]
push 3
push ecx
push ebx
call eax
mov esi, eax
test esi, esi
jl 0x347c82a0
jmp 0x347c819a
cmp dword [esp + 0x1f0], 0x3d
jne 0x347c8440
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x20]
mov dword [ecx], 0x20
mov ecx, dword [esp + 0x14]
mov dword [eax + 4], edx
mov edx, dword [esp + 0x68]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x6c]
mov dword [eax + 0xc], edx
mov edx, dword [esp + 0x70]
mov dword [eax + 0x10], ecx
mov ecx, dword [esp + 0x74]
mov dword [eax + 0x1c], edx
mov edx, dword [esp + 0x78]
mov dword [eax], 0x20
mov dword [eax + 0x14], ecx
mov dword [eax + 0x18], edx
jmp 0x347c84a5
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x14]
mov dword [eax], 0x28
mov eax, dword [esp + 0x24]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x7c]
mov dword [eax + 8], edx
mov edx, dword [esp + 0x80]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp + 0x84]
mov dword [eax + 0x10], edx
mov edx, dword [esp + 0x88]
mov dword [eax + 0x1c], ecx
mov ecx, dword [esp + 0x8c]
mov dword [eax + 0x14], edx
mov edx, dword [esp + 0x90]
mov dword [eax + 0x18], ecx
mov ecx, dword [esp + 0x94]
mov dword [eax], 0x28
mov dword [eax + 0x20], edx
mov dword [eax + 0x24], ecx
mov ecx, dword [esp + 0x1d8]
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.347ea89f
add esp, 0x1cc
ret 0x20