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

Disassembly:
sub esp, 0xce8
mov eax, dword [0x347765c8]
xor eax, esp
mov dword [esp + 0xce4], eax
push ebx
push ebp
or eax, 0xffffffff
push esi
push edi
mov edi, dword [esp + 0xcfc]
mov dword [esp + 0x18], eax
mov dword [esp + 0x10], eax
mov eax, dword [0x347efae8]
xor ebp, ebp
mov dword [esp + 0x50], ebp
mov byte [esp + 0x3c], 0
mov byte [esp + 0x38], 0
mov byte [esp + 0x48], 0
mov dword [esp + 0x4c], ebp
mov ecx, dword [eax + 0x100]
push edi
mov dword [esp + 0x48], ebp
call ecx
mov edx, dword [0x347efae8]
push eax
mov eax, dword [edx + 0xe4]
call eax
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0xd4]
push edi
call edx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov esi, dword [esp + 0xd04]
push 1
lea eax, [esp + 0x58]
push eax
push ebp
push esi
push edi
mov dword [esp + 0x58], 1
call fcn.347adacb
test eax, eax
jl 0x347790d6
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0x60]
push 0x400004
push 0x34772638
lea ecx, [esp + 0x18]
push ecx
push esi
push edi
call eax
test eax, eax
jge 0x34779019
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x108]
push edi
call edx
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0x104]
push ebp
push ebp
push ebp
push 0xffffddef
push ebp
push ebp
push 0x34772638
push edi
call ecx
jmp 0x347790ec
mov edx, dword [esp + 0x10]
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0x74]
push 0x34772894
push edx
push edi
call ecx
test eax, eax
jl 0x347790d6
mov eax, dword [esp + 0x10]
mov ecx, dword [0x347efae8]
push 1
push 0x10
lea edx, [esp + 0x5c]
push edx
mov edx, dword [ecx + 0x9c]
push eax
push edi
call edx
test eax, eax
jl 0x347790d6
mov eax, dword [esp + 0x10]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0xa0]
push 1
push eax
push edi
call edx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov ecx, dword [esp + 0xd00]
mov edx, dword [0x347efae8]
push 0x80400000
push 0x34772638
lea eax, [esp + 0x20]
push eax
mov eax, dword [edx + 0x60]
push ecx
push edi
call eax
test eax, eax
jge 0x3477912c
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x108]
push edi
call edx
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0x104]
push ebp
push ebp
push ebp
push 0xffffddef
push ebp
push ebp
push 0x34772638
push edi
call ecx
mov dword [esp + 0x18], 0xffffffff
mov eax, dword [esp + 0x10]
cmp eax, 0xffffffff
je 0x347790f4
mov edx, dword [0x347efae8]
push eax
mov eax, dword [edx + 0x68]
push edi
call eax
mov dword [esp + 0x10], 0xffffffff
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0xd8]
push 1
push edi
call edx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
xor eax, eax
mov ecx, dword [esp + 0xcf4]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.347ea89f
add esp, 0xce8
ret 0xc
mov edx, dword [esp + 0x18]
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0x74]
push 0x34772894
push edx
push edi
call ecx
test eax, eax
jl 0x347790d6
mov eax, dword [esp + 0x18]
mov ecx, dword [0x347efae8]
push 1
push 0x10
lea edx, [esp + 0x5c]
push edx
mov edx, dword [ecx + 0x9c]
push eax
push edi
call edx
test eax, eax
jl 0x347790d6
mov eax, dword [esp + 0x18]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0xa0]
push 1
push eax
push edi
call edx
mov esi, eax
cmp esi, 0xfffff9bf
jne 0x34779740
mov ecx, dword [esp + 0x10]
mov edx, dword [0x347efae8]
push ebp
push 0x18
lea eax, [esp + 0x28]
push eax
mov eax, dword [edx + 0xbc]
push 0x34773164
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov eax, dword [esp + 0x24]
push ebp
push ebp
lea ecx, [esp + 0x1c]
push ecx
mov ecx, dword [esp + 0x1c]
push 1
lea edx, [esp + 0x58]
push edx
mov edx, dword [0x347efae8]
push eax
mov eax, dword [edx + 0x88]
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov edx, dword [esp + 0x10]
mov eax, dword [0x347efae8]
push ebp
push 0x18
lea ecx, [esp + 0x28]
push ecx
mov ecx, dword [eax + 0xbc]
push 0x3477318c
push edx
push edi
call ecx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov ecx, dword [esp + 0x24]
push ebp
push ebp
lea edx, [esp + 0x1c]
push edx
mov edx, dword [esp + 0x1c]
push 0x1ff
lea eax, [esp + 0xdc]
push eax
mov eax, dword [0x347efae8]
push ecx
mov ecx, dword [eax + 0x88]
push edx
push edi
call ecx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov eax, dword [esp + 0x14]
cmp eax, 0x1fd
jb 0x3477925a
mov eax, 0x1fd
mov ecx, dword [0x347efae8]
push ebp
push 0x18
lea edx, [esp + 0x28]
push edx
mov word [esp + eax + 0xd8], bp
mov eax, dword [esp + 0x1c]
mov edx, dword [ecx + 0xbc]
push 0x34773244
push eax
push edi
call edx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov edx, dword [esp + 0x24]
push ebp
push ebp
lea eax, [esp + 0x1c]
push eax
mov eax, dword [esp + 0x1c]
push 1
lea ecx, [esp + 0x4c]
push ecx
mov ecx, dword [0x347efae8]
push edx
mov edx, dword [ecx + 0x88]
push eax
push edi
call edx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
cmp dword [esp + 0x14], ebp
jne 0x347792c9
mov byte [esp + 0x3c], 0
mov ecx, dword [esp + 0x10]
mov edx, dword [0x347efae8]
push ebp
push 0x18
lea eax, [esp + 0x28]
push eax
push 0x347731d4
push ecx
mov dword [esp + 0x28], 0x208
mov eax, dword [edx + 0xbc]
push edi
call eax
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov eax, dword [esp + 0x24]
push ebp
push ebp
lea ecx, [esp + 0x1c]
push ecx
mov ecx, dword [esp + 0x1c]
push 0x208
lea edx, [esp + 0x6ec]
push edx
mov edx, dword [0x347efae8]
push eax
mov eax, dword [edx + 0x88]
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov eax, dword [esp + 0x14]
cmp eax, 0x206
jb 0x34779343
mov eax, 0x206
mov edx, dword [esp + 0x10]
push ebp
push 0x18
lea ecx, [esp + 0x28]
push ecx
push 0x34773218
mov word [esp + eax + 0x6ec], bp
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0xbc]
push edx
push edi
call ecx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov ecx, dword [esp + 0x24]
push ebp
push ebp
lea edx, [esp + 0x1c]
push edx
mov edx, dword [esp + 0x1c]
push 0x2a
lea eax, [esp + 0xb0]
push eax
mov eax, dword [0x347efae8]
push ecx
mov ecx, dword [eax + 0x88]
push edx
push edi
call ecx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov eax, dword [esp + 0x14]
cmp eax, ebp
jne 0x347793b8
mov byte [esp + 0xa0], 0
mov ecx, dword [0x347efae8]
push ebp
push 0x18
lea edx, [esp + 0x28]
push edx
mov edx, dword [ecx + 0xbc]
mov ebx, eax
mov eax, dword [esp + 0x1c]
push 0x3477317c
push eax
push edi
call edx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov edx, dword [esp + 0x24]
push ebp
push ebp
lea eax, [esp + 0x1c]
push eax
mov eax, dword [esp + 0x1c]
push 2
lea ecx, [esp + 0x2c]
push ecx
mov ecx, dword [0x347efae8]
push edx
mov edx, dword [ecx + 0x88]
push eax
push edi
call edx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov ecx, dword [esp + 0x10]
mov edx, dword [0x347efae8]
push ebp
push 0x18
lea eax, [esp + 0x28]
push eax
mov eax, dword [edx + 0xbc]
push 0x34773230
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov eax, dword [esp + 0x24]
push ebp
push ebp
lea ecx, [esp + 0x1c]
push ecx
mov ecx, dword [esp + 0x1c]
push 1
lea edx, [esp + 0x48]
push edx
mov edx, dword [0x347efae8]
push eax
mov eax, dword [edx + 0x88]
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
cmp esi, 0x3ec
jne 0x3477947f
mov byte [esp + 0x38], 0
mov edx, dword [esp + 0x10]
mov eax, dword [0x347efae8]
push ebp
push 0x18
lea ecx, [esp + 0x28]
push ecx
mov ecx, dword [eax + 0xbc]
push 0x347740c0
push edx
push edi
call ecx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov ecx, dword [esp + 0x24]
push ebp
push ebp
lea edx, [esp + 0x1c]
push edx
mov edx, dword [esp + 0x1c]
push 0x208
lea eax, [esp + 0x2dc]
push eax
mov eax, dword [0x347efae8]
push ecx
mov ecx, dword [eax + 0x88]
push edx
push edi
call ecx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
cmp esi, 0x3ec
jne 0x347794ef
xor eax, eax
mov dword [esp + 0x14], eax
jmp 0x347794ff
mov eax, dword [esp + 0x14]
cmp eax, 0x206
jb 0x347794ff
mov eax, 0x206
mov ecx, dword [0x347efae8]
push ebp
push 0x18
lea edx, [esp + 0x28]
push edx
mov word [esp + eax + 0x2d8], bp
mov eax, dword [esp + 0x1c]
mov edx, dword [ecx + 0xbc]
push 0x347740e0
push eax
push edi
call edx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov edx, dword [esp + 0x24]
push ebp
push ebp
lea eax, [esp + 0x1c]
push eax
mov eax, dword [esp + 0x1c]
push 0x208
lea ecx, [esp + 0x8f4]
push ecx
mov ecx, dword [0x347efae8]
push edx
mov edx, dword [ecx + 0x88]
push eax
push edi
call edx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
cmp esi, 0x3ec
jne 0x34779579
xor eax, eax
mov dword [esp + 0x14], eax
jmp 0x34779589
mov eax, dword [esp + 0x14]
cmp eax, 0x206
jb 0x34779589
mov eax, 0x206
mov ecx, dword [esp + 0x10]
mov edx, dword [0x347efae8]
push ebp
push 0x18
mov word [esp + eax + 0x8ec], bp
lea eax, [esp + 0x28]
push eax
mov eax, dword [edx + 0xbc]
push 0x34774100
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov eax, dword [esp + 0x24]
push ebp
push ebp
lea ecx, [esp + 0x1c]
push ecx
mov ecx, dword [esp + 0x1c]
push 0x208
lea edx, [esp + 0x4e4]
push edx
mov edx, dword [0x347efae8]
push eax
mov eax, dword [edx + 0x88]
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
cmp esi, 0x3ec
jne 0x34779603
xor eax, eax
mov dword [esp + 0x14], eax
jmp 0x34779613
mov eax, dword [esp + 0x14]
cmp eax, 0x206
jb 0x34779613
mov eax, 0x206
mov edx, dword [esp + 0x10]
push ebp
push 0x18
lea ecx, [esp + 0x28]
push ecx
push 0x34773200
mov word [esp + eax + 0x4e4], bp
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0xbc]
push edx
push edi
call ecx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov ecx, dword [esp + 0x24]
push ebp
push ebp
lea edx, [esp + 0x1c]
push edx
mov edx, dword [esp + 0x1c]
push 0x2a
lea eax, [esp + 0x84]
push eax
mov eax, dword [0x347efae8]
push ecx
mov ecx, dword [eax + 0x88]
push edx
push edi
call ecx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
cmp esi, 0x3ec
jne 0x34779690
push 0x2a
lea edx, [esp + 0x78]
push ebp
push edx
call sub.msvcr80.dll_memset
add esp, 0xc
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0xaec]
push eax
push ebp
push ecx
lea edx, [esp + 0x80]
push edx
lea eax, [esp + 0x4e4]
push eax
mov eax, dword [esp + 0x4c]
lea ecx, [esp + 0x8f8]
push ecx
mov ecx, dword [esp + 0x34]
lea edx, [esp + 0x2e4]
push edx
push eax
push ecx
mov ecx, dword [esp + 0x60]
push ebx
lea edx, [esp + 0xc8]
push edx
lea eax, [esp + 0x708]
push eax
mov eax, dword [esp + 0x78]
push ecx
lea edx, [esp + 0x100]
push edx
push eax
lea ecx, [esp + 0x8c]
push ecx
mov ecx, dword [esp + 0x58]
lea edx, [esp + 0x8c]
push edx
mov edx, dword [esp + 0xd44]
lea eax, [esp + 0x98]
push eax
push 3
push ebp
push ecx
push edx
push edi
call fcn.347b0783
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov ecx, dword [esp + 0xd00]
lea eax, [esp + 0x54]
push eax
push ecx
push edi
call fcn.347ae094
cmp eax, ebp
jl 0x347790d6
jmp 0x34779748
cmp esi, ebp
jl 0x34779ae0
mov edx, dword [esp + 0x18]
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0x68]
push edx
push edi
call ecx
mov edx, dword [esp + 0x10]
mov eax, dword [0x347efae8]
or esi, 0xffffffff
push edx
mov dword [esp + 0x1c], esi
mov ecx, dword [eax + 0x68]
push edi
call ecx
mov eax, dword [esp + 0xd04]
lea edx, [esp + 0x64]
push edx
push eax
push edi
mov dword [esp + 0x1c], esi
call fcn.347ad9c3
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0x228]
mov edx, dword [esp + 0xd00]
mov ecx, dword [ecx + edx*4]
mov ecx, dword [ecx + 0xc]
push 0x34772824
push ecx
mov dword [esp + 0x20], ecx
mov edx, dword [eax + 0x74]
push edi
call edx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov ecx, dword [esp + 0x18]
mov edx, dword [0x347efae8]
push 1
push 0x10
lea eax, [esp + 0x6c]
push eax
mov eax, dword [edx + 0x9c]
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov ecx, dword [esp + 0x18]
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0xa0]
push 1
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov edx, dword [esp + 0x18]
mov eax, dword [0x347efae8]
lea ecx, [esp + 0x40]
push ecx
mov ecx, dword [eax + 0x1b4]
push edx
call ecx
mov edx, dword [esp + 0x40]
mov eax, dword [esp + 0x18]
mov ecx, dword [0x347efae8]
or edx, 0x10
push edx
mov edx, dword [ecx + 0x1b8]
push eax
call edx
mov ecx, dword [esp + 0x18]
mov edx, dword [0x347efae8]
push ebp
push 0x18
lea eax, [esp + 0x28]
push eax
mov eax, dword [edx + 0xbc]
push 0x34772894
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov ecx, dword [esp + 0x18]
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0x90]
push 2
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov edx, dword [esp + 0x24]
mov eax, dword [esp + 0x18]
push ebp
push ebp
push 0x10
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, ebp
jl 0x34779ae0
mov ecx, dword [esp + 0xd04]
mov edx, dword [0x347efae8]
push 0x400004
push 0x34772528
lea eax, [esp + 0x18]
push eax
mov eax, dword [edx + 0x60]
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebp
jge 0x34779914
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x108]
push edi
call edx
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0x104]
push ebp
push ebp
push ebp
push 0xffffddef
push ebp
push ebp
push 0x34772528
push edi
call ecx
mov dword [esp + 0x10], 0xffffffff
jmp 0x34779ae0
mov edx, dword [esp + 0x10]
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0x74]
push 0x34772824
push edx
push edi
call ecx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov eax, dword [esp + 0x10]
mov ecx, dword [0x347efae8]
push 1
push 0x10
lea edx, [esp + 0x6c]
push edx
mov edx, dword [ecx + 0x9c]
push eax
push edi
call edx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov eax, dword [esp + 0x10]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0xa0]
push 1
push eax
push edi
call edx
mov esi, eax
cmp esi, ebp
jl 0x34779a36
mov ecx, dword [esp + 0x10]
mov edx, dword [0x347efae8]
push ebp
push 0x18
lea eax, [esp + 0x28]
push eax
mov eax, dword [edx + 0xbc]
push 0x34772cb0
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov eax, dword [esp + 0x24]
push ebp
push ebp
lea ecx, [esp + 0x1c]
push ecx
mov ecx, dword [esp + 0x1c]
push 2
lea edx, [esp + 0x2c]
push edx
mov edx, dword [0x347efae8]
push eax
mov eax, dword [edx + 0x88]
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
cmp dword [esp + 0x14], ebp
jne 0x347799e0
mov dword [esp + 0x1c], ebp
mov edx, dword [esp + 0x18]
mov eax, dword [0x347efae8]
push ebp
push 0x18
lea ecx, [esp + 0x28]
push ecx
mov ecx, dword [eax + 0xbc]
push 0x34772cb0
push edx
push edi
call ecx
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x18]
push ebp
push ebp
push 2
lea edx, [esp + 0x28]
push edx
mov edx, dword [0x347efae8]
push eax
mov eax, dword [edx + 0x8c]
push ecx
push edi
call eax
mov esi, eax
cmp esi, ebp
jl 0x34779ae0
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x18]
mov eax, dword [0x347efae8]
push ecx
mov ecx, dword [eax + 0x1b8]
push edx
call ecx
mov edx, dword [0x347ed1c4]
imul edx, edx, 0x3e8
mov eax, 0x10624dd3
mul edx
shr edx, 5
je 0x34779ac3
mov ebx, dword [sym.imp.kernel32.dll_Sleep]
mov eax, dword [esp + 0x18]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x94]
push 0
push 0
push 0
push eax
push edi
call edx
mov esi, eax
cmp esi, 0xfffffbae
je 0x34779a9f
cmp esi, 0xfffffbaf
je 0x34779a9f
cmp esi, 0xfffffbb2
jne 0x34779ac3
push 0x1f4
call ebx
mov ecx, dword [0x347ed1c4]
imul ecx, ecx, 0x3e8
mov eax, 0x10624dd3
mul ecx
add ebp, 1
shr edx, 5
cmp ebp, edx
jb 0x34779a6b
test esi, esi
jl 0x34779ade
mov edx, dword [esp + 0x10]
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0x68]
push edx
push edi
call ecx
xor ebp, ebp
jmp 0x347790ec
xor ebp, ebp
mov eax, dword [esp + 0x18]
or ebx, 0xffffffff
cmp eax, ebx
je 0x34779afb
push eax
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0x68]
push edi
call ecx
mov dword [esp + 0x18], ebx
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x34779b14
mov edx, dword [0x347efae8]
push eax
mov eax, dword [edx + 0x68]
push edi
call eax
mov dword [esp + 0x10], ebx
cmp dword [esp + 0x44], ebp
je 0x34779b2a
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0xdc]
push ebp
push edi
call edx
mov eax, esi
jmp 0x34779111