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

Disassembly:
sub esp, 0x30c
mov eax, dword [0x347765c8]
xor eax, esp
mov dword [esp + 0x308], eax
push ebx
push ebp
push esi
mov esi, dword [esp + 0x31c]
lea eax, [esp + 0xf4]
push eax
or ebp, 0xffffffff
push esi
push edi
mov dword [esp + 0x18], ebp
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x20], ebp
call fcn.347ad9c3
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0x60]
push 0x80400000
push 0x3477268c
lea ecx, [esp + 0x18]
push ecx
push esi
push edi
call eax
mov esi, eax
cmp esi, 0xfffffae7
jne 0x347b5c3d
mov dword [esp + 0x10], ebp
jmp 0x347b6755
xor ebx, ebx
cmp esi, ebx
jl 0x347b6755
mov edx, dword [esp + 0x31c]
mov eax, dword [0x347efae8]
push 0x80400000
push 0x347725dc
lea ecx, [esp + 0x1c]
push ecx
mov ecx, dword [eax + 0x60]
push edx
push edi
call ecx
mov esi, eax
cmp esi, ebx
jl 0x347b672d
mov eax, dword [esp + 0x14]
mov ecx, dword [0x347efae8]
push ebx
push 0x18
lea edx, [esp + 0x24]
push edx
mov edx, dword [ecx + 0xbc]
push 0x347730c0
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b6755
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x14]
push ebx
push 0x18
lea ecx, [esp + 0x24]
push ecx
push 0x347730ec
mov dword [esp + 0x84], eax
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0xbc]
push edx
push edi
call ecx
mov esi, eax
cmp esi, ebx
jl 0x347b6755
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x14]
mov ecx, dword [0x347efae8]
push ebx
push 0x80000000
push eax
mov dword [esp + 0x78], edx
mov edx, dword [ecx + 0x84]
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b6706
lea ecx, [ecx]
mov edx, dword [esp + 0x74]
push ebx
push ebx
lea eax, [esp + 0x20]
push eax
mov eax, dword [esp + 0x20]
push 0x82
lea ecx, [esp + 0x21c]
push ecx
mov ecx, dword [0x347efae8]
push edx
mov edx, dword [ecx + 0x88]
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b6755
mov eax, dword [esp + 0x18]
push 0x80400002
shr eax, 1
lea ecx, [esp + 0x210]
push ecx
mov ecx, dword [0x347efae8]
mov word [esp + eax*2 + 0x214], bx
mov eax, dword [esp + 0x324]
lea edx, [esp + 0x14]
push edx
mov edx, dword [ecx + 0x60]
push eax
push edi
call edx
cmp eax, 0xfffffae7
jne 0x347b5d7c
mov dword [esp + 0xc], ebp
jmp 0x347b66e5
cmp eax, ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x40], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x3c], 1
mov dword [esp + 0x90], ebp
mov esi, eax
jl 0x347b6755
mov ecx, dword [esp + 0x14]
mov edx, dword [0x347efae8]
lea eax, [esp + 0x44]
push eax
mov eax, dword [edx + 0x1b4]
push ecx
call eax
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x14]
mov eax, dword [0x347efae8]
or ecx, 0x10
push ecx
mov ecx, dword [eax + 0x1b8]
push edx
call ecx
mov ecx, dword [esp + 0x6c]
push ebx
push ebx
lea edx, [esp + 0x20]
push edx
mov edx, dword [esp + 0x20]
push 0x10
lea eax, [esp + 0xe4]
push eax
mov eax, dword [0x347efae8]
push ecx
mov ecx, dword [eax + 0x88]
push edx
push edi
call ecx
mov esi, eax
cmp esi, ebx
jl 0x347b669a
mov eax, dword [esp + 0xc]
mov ecx, dword [0x347efae8]
push ebx
push 0x18
lea edx, [esp + 0x24]
push edx
mov edx, dword [ecx + 0xbc]
push 0x347727f4
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b6755
mov eax, dword [esp + 0xc]
mov ecx, dword [0x347efae8]
mov ebp, dword [esp + 0x20]
push ebx
push 0x80000000
push eax
mov dword [esp + 0x84], ebx
mov edx, dword [ecx + 0x84]
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b5eee
nop
mov eax, dword [esp + 0xc]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x90]
push 2
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b6752
mov ecx, dword [esp + 0xc]
mov edx, dword [0x347efae8]
push ebx
push ebx
push 4
lea eax, [esp + 0x84]
push eax
mov eax, dword [edx + 0x8c]
push ebp
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebx
jl 0x347b6752
mov ecx, dword [esp + 0xc]
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0x94]
push ebx
push ebx
push ebx
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebx
jl 0x347b6752
mov ecx, dword [esp + 0xc]
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0x84]
push ebx
push 1
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebx
jge 0x347b5e61
cmp esi, 0xfffff9bd
je 0x347b5efe
cmp esi, ebx
jl 0x347b6752
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0xc]
mov eax, dword [0x347efae8]
push ecx
mov ecx, dword [eax + 0x1b8]
push edx
call ecx
mov eax, dword [esp + 0xc]
mov ecx, dword [0x347efae8]
lea edx, [esp + 0x34]
push edx
mov edx, dword [ecx + 0x1b4]
push eax
call edx
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0xc]
mov edx, dword [0x347efae8]
or eax, 0x10
push eax
mov eax, dword [edx + 0x1b8]
push ecx
call eax
mov ebp, dword [esp + 0x31c]
lea ecx, [esp + 0x18]
push ecx
push 0x80
lea edx, [esp + 0x190]
push edx
lea eax, [esp + 0xe0]
push eax
push ebp
push edi
call fcn.347a0759
mov esi, eax
cmp esi, ebx
jl 0x347b6752
mov eax, dword [esp + 0x18]
cmp eax, 0x80
jb 0x347b5f8a
mov eax, 0x80
push ebx
push ebx
lea ecx, [esp + 0x8c]
push ecx
lea edx, [esp + 0x24]
push edx
mov edx, dword [0x347efae8]
push 0x82
mov word [esp + eax + 0x19c], bx
lea eax, [esp + 0x2a4]
push eax
mov eax, dword [edx + 0x140]
push 0x34772398
push ebx
lea ecx, [esp + 0x1a8]
push ecx
push 0x34771260
push ebp
push edi
call eax
mov esi, eax
cmp esi, ebx
jl 0x347b6752
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0xc]
push 1
push 0x38
lea edx, [esp + 0x94]
push edx
shr ecx, 1
push ebx
mov word [esp + ecx*2 + 0x2a0], bx
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0xbc]
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b6752
mov eax, dword [esp + 0x90]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x84]
push ebx
push 0x80000000
push eax
push edi
call edx
test eax, eax
jl 0x347b6163
mov edx, dword [esp + 0xb0]
push ebx
push ebx
lea eax, [esp + 0x20]
push eax
mov eax, dword [esp + 0x9c]
push 4
lea ecx, [esp + 0x58]
push ecx
mov ecx, dword [0x347efae8]
push edx
mov edx, dword [ecx + 0x88]
push eax
push edi
call edx
mov esi, eax
cmp esi, 0x3ec
jne 0x347b6076
mov dword [esp + 0x48], ebx
jmp 0x347b607e
cmp esi, ebx
jl 0x347b6752
mov edx, dword [esp + 0x9c]
push ebx
push ebx
lea eax, [esp + 0x20]
push eax
mov eax, dword [esp + 0x9c]
push 0x80
lea ecx, [esp + 0x114]
push ecx
mov ecx, dword [0x347efae8]
push edx
mov edx, dword [ecx + 0x88]
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b6752
mov eax, dword [esp + 0x18]
cmp eax, 0x80
jb 0x347b60cb
mov eax, 0x80
test dword [esp + 0x48], 0x2000
mov word [esp + eax + 0x104], bx
je 0x347b60fe
mov edx, dword [esp + 0xc]
push 4
lea eax, [esp + 0x40]
push eax
mov eax, dword [0x347efae8]
lea ecx, [esp + 0x10c]
push ecx
mov ecx, dword [eax + 0x44]
push edx
push edi
call ecx
jmp 0x347b6137
lea edx, [esp + 0x290]
push edx
lea eax, [esp + 0x108]
push eax
call fcn.34780cf0
test eax, eax
jne 0x347b6141
mov eax, dword [esp + 0xc]
push 4
lea ecx, [esp + 0x40]
push ecx
mov ecx, dword [0x347efae8]
lea edx, [esp + 0x10c]
push edx
mov edx, dword [ecx + 0x44]
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b6752
mov eax, dword [esp + 0x90]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x84]
push ebx
push 1
push eax
push edi
call edx
test eax, eax
jge 0x347b6039
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x5c]
push edx
push 0xffffb126
push edi
call fcn.347a444b
mov esi, eax
cmp esi, ebx
jl 0x347b6752
mov ecx, dword [esp + 0xc]
mov edx, dword [0x347efae8]
push ebx
push 0x18
lea eax, [esp + 0x24]
push eax
mov eax, dword [edx + 0xbc]
push 0x34772824
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0xc]
push ebx
push 0x18
lea edx, [esp + 0x24]
push edx
push 0x34772a60
mov dword [esp + 0x74], ecx
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0xbc]
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
push ebx
push 0x18
lea ecx, [esp + 0x24]
push ecx
push 0x34772824
mov dword [esp + 0x60], eax
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0xbc]
push edx
push edi
call ecx
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x10]
push ebx
push 0x18
lea eax, [esp + 0x24]
push eax
push 0x34772908
mov dword [esp + 0x90], edx
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0xbc]
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
push ebx
push 0x18
lea edx, [esp + 0x24]
push edx
push 0x34772928
mov dword [esp + 0x6c], ecx
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0xbc]
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
push ebx
push 0x18
lea ecx, [esp + 0x24]
push ecx
push 0x34772944
mov dword [esp + 0x8c], eax
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0xbc]
push edx
push edi
call ecx
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x10]
push ebx
push 0x18
lea eax, [esp + 0x24]
push eax
push 0x34772974
mov dword [esp + 0x5c], edx
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0xbc]
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
push ebx
push 0x18
lea edx, [esp + 0x24]
push edx
push 0x347728ec
mov dword [esp + 0x68], ecx
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0xbc]
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
push ebx
push 0x18
lea ecx, [esp + 0x24]
push ecx
push 0x347729f8
mov dword [esp + 0x70], eax
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0xbc]
push edx
push edi
call ecx
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x10]
push ebx
push 0x18
lea eax, [esp + 0x24]
push eax
push 0x34772a18
mov dword [esp + 0x78], edx
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0xbc]
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x10]
push ebx
push 0x18
lea edx, [esp + 0x24]
push edx
push 0x347729b8
mov dword [esp + 0x80], ecx
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0xbc]
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov eax, dword [esp + 0xc]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x84]
mov ebp, dword [esp + 0x20]
push ebx
push 0x80000000
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b668d
mov eax, dword [esp + 0x10]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x90]
push ebx
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov edx, dword [esp + 0x80]
push ebx
push 1
lea eax, [esp + 0x20]
push eax
mov eax, dword [esp + 0x1c]
push 0x10
lea ecx, [esp + 0xf4]
push ecx
mov ecx, dword [0x347efae8]
push edx
mov edx, dword [ecx + 0x88]
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x10]
push ebx
push ebx
push 0x10
lea eax, [esp + 0xf0]
push eax
mov eax, dword [0x347efae8]
push ecx
mov ecx, dword [eax + 0x8c]
push edx
push edi
call ecx
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x10]
push ebx
push ebx
push 0x10
lea edx, [esp + 0xe0]
push edx
mov edx, dword [0x347efae8]
push eax
mov eax, dword [edx + 0x8c]
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov eax, dword [esp + 0x64]
push ebx
push ebx
lea ecx, [esp + 0x20]
push ecx
mov ecx, dword [esp + 0x18]
push 0x10
lea edx, [esp + 0xd4]
push edx
mov edx, dword [0x347efae8]
push eax
mov eax, dword [edx + 0x88]
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x10]
push ebx
push ebx
push 0x10
lea ecx, [esp + 0xd0]
push ecx
mov ecx, dword [0x347efae8]
push edx
mov edx, dword [ecx + 0x8c]
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov ecx, dword [esp + 0x10]
mov edx, dword [0x347efae8]
push ebx
push ebx
push 0x10
lea eax, [esp + 0xd0]
push eax
mov eax, dword [edx + 0x8c]
push ebp
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov edx, dword [esp + 0x58]
mov eax, dword [esp + 0x10]
push ebx
push ebx
push 4
lea ecx, [esp + 0x60]
push ecx
mov ecx, dword [0x347efae8]
push edx
mov edx, dword [ecx + 0x8c]
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0x38]
push ebx
push ebx
lea ecx, [eax + eax]
mov eax, dword [esp + 0x68]
push ecx
mov ecx, dword [esp + 0x1c]
push edx
mov edx, dword [0x347efae8]
push eax
mov eax, dword [edx + 0x8c]
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x10]
push ebx
push ebx
push 0x10
lea ecx, [esp + 0x100]
push ecx
mov ecx, dword [0x347efae8]
push edx
mov edx, dword [ecx + 0x8c]
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x10]
push ebx
push ebx
push 0x10
lea eax, [esp + 0x100]
push eax
mov eax, dword [0x347efae8]
push ecx
mov ecx, dword [eax + 0x8c]
push edx
push edi
call ecx
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x18]
push edx
mov edx, dword [0x347efae8]
push 4
lea eax, [esp + 0x90]
push eax
mov eax, dword [edx + 0x94]
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov ecx, dword [esp + 0xc]
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0x90]
push 2
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0xc]
push ebx
push ebx
push 0x10
lea ecx, [esp + 0xf0]
push ecx
mov ecx, dword [0x347efae8]
push edx
mov edx, dword [ecx + 0x8c]
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov eax, dword [esp + 0xc]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x94]
push ebx
push ebx
push ebx
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jl 0x347b6697
mov eax, dword [esp + 0xc]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x84]
push ebx
push 1
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jge 0x347b63de
cmp esi, 0xfffff9bd
jne 0x347b6697
xor esi, esi
or ebp, 0xffffffff
mov eax, dword [esp + 0x38]
cmp eax, ebx
je 0x347b66b0
push eax
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0x20c]
call ecx
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0xc]
mov ecx, dword [0x347efae8]
push edx
mov edx, dword [ecx + 0x1b8]
push eax
call edx
mov eax, dword [esp + 0xc]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x68]
push eax
push edi
call edx
cmp esi, ebx
mov dword [esp + 0xc], ebp
jl 0x347b6769
mov eax, dword [esp + 0x14]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x84]
push ebx
push 1
push eax
push edi
call edx
mov esi, eax
cmp esi, ebx
jge 0x347b5d01
cmp esi, 0xfffff9bd
jne 0x347b6712
xor esi, esi
jmp 0x347b6716
cmp esi, ebx
jl 0x347b6755
mov eax, dword [esp + 0x14]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x68]
push eax
push edi
call edx
mov dword [esp + 0x14], ebp
jmp 0x347b673b
cmp esi, 0xfffffae7
mov dword [esp + 0x14], ebp
jne 0x347b673b
xor esi, esi
mov eax, dword [esp + 0x10]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x68]
push eax
push edi
call edx
mov dword [esp + 0x10], ebp
jmp 0x347b6755
or ebp, 0xffffffff
mov eax, dword [esp + 0xc]
cmp eax, ebp
je 0x347b6769
push eax
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0x68]
push edi
call ecx
mov eax, dword [esp + 0x14]
cmp eax, ebp
je 0x347b677e
mov edx, dword [0x347efae8]
push eax
mov eax, dword [edx + 0x68]
push edi
call eax
mov eax, dword [esp + 0x10]
cmp eax, ebp
je 0x347b6793
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x68]
push eax
push edi
call edx
mov ecx, dword [esp + 0x314]
mov eax, esi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.347ea89f
add esp, 0x30c
ret 4