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

Disassembly:
sub esp, 0x28c
mov eax, dword [0x347765c8]
xor eax, esp
mov dword [esp + 0x288], eax
mov eax, dword [esp + 0x2a0]
mov ecx, dword [esp + 0x2a4]
mov edx, dword [esp + 0x2a8]
push ebx
mov ebx, dword [esp + 0x29c]
push ebp
push esi
mov esi, dword [esp + 0x29c]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x2b8]
xor ebp, ebp
mov dword [esp + 0x70], eax
push 0x34772824
mov dword [esp + 0x6c], ecx
mov ecx, dword [0x347efae8]
or eax, 0xffffffff
push ebx
mov dword [esp + 0x74], edx
mov dword [esp + 0x20], ebp
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], eax
mov edx, dword [ecx + 0x74]
push esi
mov dword [esp + 0x38], ebp
mov dword [esp + 0x34], ebp
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x3c], ebp
call edx
cmp eax, ebp
jl 0x3477b6fa
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x9c]
push 1
push 0x10
lea eax, [esp + 0x6c]
push eax
push ebx
push esi
call edx
cmp eax, ebp
jl 0x3477b6fa
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0xa0]
push 1
push ebx
push esi
call ecx
cmp eax, 0xfffff9bf
jne 0x3477b6fa
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0xbc]
push edi
push ebp
push 0x18
lea edx, [esp + 0x40]
push edx
push 0x34772c58
push ebx
push esi
call ecx
mov edi, eax
cmp edi, ebp
jl 0x3477b235
mov edx, dword [esp + 0x3c]
mov ecx, dword [0x347efae8]
push ebp
push 0x18
lea eax, [esp + 0x40]
push eax
push 0x34772c68
push ebx
mov dword [esp + 0x44], edx
mov edx, dword [ecx + 0xbc]
push esi
call edx
mov edi, eax
cmp edi, ebp
jl 0x3477b235
mov eax, dword [esp + 0x3c]
mov edx, dword [0x347efae8]
push ebp
push 0x18
lea ecx, [esp + 0x40]
push ecx
push 0x34772c30
push ebx
mov dword [esp + 0x40], eax
mov eax, dword [edx + 0xbc]
push esi
call eax
mov edi, eax
cmp edi, ebp
jl 0x3477b235
mov ecx, dword [esp + 0x3c]
mov eax, dword [0x347efae8]
push ebp
push 0x18
lea edx, [esp + 0x40]
push edx
push 0x34772c44
push ebx
mov dword [esp + 0x38], ecx
mov ecx, dword [eax + 0xbc]
push esi
call ecx
mov edi, eax
cmp edi, ebp
jl 0x3477b235
mov edx, dword [esp + 0x3c]
mov edi, dword [esp + 0x2a4]
mov ecx, dword [0x347efae8]
lea eax, [esp + 0x2c0]
push eax
push edi
mov dword [esp + 0x3c], edx
mov edx, dword [ecx + 0x1a4]
push esi
call edx
test eax, eax
je 0x3477b096
mov eax, dword [esp + 0x2c0]
mov dword [esp + 0x1c], eax
jmp 0x3477b0b7
mov eax, dword [0x347efae8]
lea ecx, [esp + 0x1c]
push ecx
mov ecx, dword [eax + 0x1a0]
lea edx, [esp + 0x6c]
push edx
push edi
push esi
call ecx
cmp eax, ebp
jl 0x3477b6f9
mov eax, dword [esp + 0x2c4]
mov ecx, dword [0x347efae8]
push 0x80400000
push 0x347724cc
lea edx, [esp + 0x18]
push edx
mov edx, dword [ecx + 0x60]
push eax
push esi
call edx
cmp eax, ebp
jl 0x3477b6f9
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x60]
push 0x80400000
push 0x347724ec
lea eax, [esp + 0x1c]
push eax
push edi
push esi
call edx
mov edi, eax
cmp edi, ebp
jl 0x3477b235
mov ecx, dword [esp + 0x10]
mov edx, dword [0x347efae8]
push ebp
push 0x18
lea eax, [esp + 0x40]
push eax
mov eax, dword [edx + 0xbc]
push 0x34772ae8
push ecx
push esi
call eax
mov edi, eax
cmp edi, ebp
jl 0x3477b235
mov ecx, dword [esp + 0x14]
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0x74]
push 0x34772ae8
push ecx
push esi
call eax
mov edi, eax
cmp edi, ebp
jl 0x3477b235
mov ecx, dword [esp + 0x10]
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0x84]
push ebp
push 0x7fffffff
push ecx
push esi
call eax
cmp eax, ebp
jl 0x3477b230
mov ebx, dword [esp + 0x3c]
mov eax, dword [esp + 0x10]
push ebp
push ebp
lea ecx, [esp + 0x20]
push ecx
mov ecx, dword [0x347efae8]
push 0x10
lea edx, [esp + 0x98]
push edx
mov edx, dword [ecx + 0x88]
push ebx
push eax
push esi
call edx
mov edi, eax
cmp edi, 0x3ec
jne 0x3477b1c9
xor eax, eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
jmp 0x3477b1cd
cmp edi, ebp
jl 0x3477b235
mov ecx, dword [esp + 0x14]
mov edx, dword [0x347efae8]
push 1
push 0x10
lea eax, [esp + 0x90]
push eax
mov eax, dword [edx + 0x9c]
push ecx
push esi
call eax
mov edi, eax
cmp edi, ebp
jl 0x3477b235
mov ecx, dword [esp + 0x14]
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0xa0]
push 1
push ecx
push esi
call eax
test eax, eax
push ebp
jge 0x3477b387
mov ecx, dword [esp + 0x14]
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0x84]
push 0xffffffffffffffff
push ecx
push esi
call eax
cmp eax, ebp
jge 0x3477b179
mov edi, 0xffffb19a
mov eax, dword [esp + 0x10]
or ebx, 0xffffffff
cmp eax, ebx
je 0x3477b251
mov edx, dword [0x347efae8]
push eax
mov eax, dword [edx + 0x68]
push esi
call eax
mov dword [esp + 0x10], ebx
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x3477b26a
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x68]
push eax
push esi
call edx
mov dword [esp + 0x14], ebx
cmp edi, ebp
jl 0x3477b6f7
mov ecx, dword [esp + 0x2a4]
mov edx, dword [0x347efae8]
push 0x80400000
push 0x347724cc
lea eax, [esp + 0x18]
push eax
mov eax, dword [edx + 0x60]
push ecx
push esi
call eax
cmp eax, ebp
jl 0x3477b6f9
mov edx, dword [esp + 0x2c4]
mov eax, dword [0x347efae8]
push 0x80400000
push 0x347724ec
lea ecx, [esp + 0x1c]
push ecx
mov ecx, dword [eax + 0x60]
push edx
push esi
call ecx
mov edi, eax
cmp edi, ebp
jl 0x3477b459
mov eax, dword [esp + 0x10]
mov ecx, dword [0x347efae8]
push ebp
push 0x18
lea edx, [esp + 0x40]
push edx
mov edx, dword [ecx + 0xbc]
push 0x34772ae8
push eax
push esi
call edx
mov edi, eax
cmp edi, ebp
jl 0x3477b459
mov eax, dword [esp + 0x14]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x74]
push 0x34772ae8
push eax
push esi
call edx
mov edi, eax
cmp edi, ebp
jl 0x3477b459
mov eax, dword [esp + 0x10]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x84]
push ebp
push 0x7fffffff
push eax
push esi
call edx
cmp eax, ebp
jl 0x3477b454
mov ebx, dword [esp + 0x3c]
mov edx, dword [esp + 0x10]
push ebp
push ebp
lea eax, [esp + 0x20]
push eax
mov eax, dword [0x347efae8]
push 0x10
lea ecx, [esp + 0x88]
push ecx
mov ecx, dword [eax + 0x88]
push ebx
push edx
push esi
call ecx
mov edi, eax
cmp edi, 0x3ec
jne 0x3477b3ed
xor eax, eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
jmp 0x3477b3f1
mov edx, dword [esp + 0x14]
mov eax, dword [0x347efae8]
push 0x18
lea ecx, [esp + 0x58]
push ecx
mov ecx, dword [eax + 0xbc]
push 0x347727f4
push edx
push esi
call ecx
mov edi, eax
cmp edi, ebp
jl 0x3477b235
mov ecx, dword [esp + 0x54]
push ebp
push ebp
lea edx, [esp + 0x20]
push edx
mov edx, dword [esp + 0x1c]
push 4
lea eax, [esp + 0x38]
push eax
mov eax, dword [0x347efae8]
push ecx
mov ecx, dword [eax + 0x88]
push edx
push esi
call ecx
mov edi, eax
cmp edi, 0x3ec
jne 0x3477b235
mov dword [esp + 0x28], ebp
jmp 0x3477b235
cmp edi, ebp
jl 0x3477b459
mov eax, dword [esp + 0x14]
mov ecx, dword [0x347efae8]
push 1
push 0x10
lea edx, [esp + 0x80]
push edx
mov edx, dword [ecx + 0x9c]
push eax
push esi
call edx
mov edi, eax
cmp edi, ebp
jl 0x3477b459
mov eax, dword [esp + 0x14]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0xa0]
push 1
push eax
push esi
call edx
test eax, eax
push ebp
jge 0x3477b714
mov eax, dword [esp + 0x14]
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x84]
push 0xffffffffffffffff
push eax
push esi
call edx
cmp eax, ebp
jge 0x3477b33a
mov edi, 0xffffb19a
mov eax, dword [esp + 0x10]
cmp eax, 0xffffffff
je 0x3477b46f
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0x68]
push eax
push esi
call edx
mov eax, dword [esp + 0x14]
cmp eax, 0xffffffff
je 0x3477b484
push eax
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0x68]
push esi
call ecx
cmp edi, ebp
jl 0x3477b6f7
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x2a8]
push ebp
push 1
push edx
lea eax, [esp + 0x74]
push eax
push ecx
push esi
call fcn.347b0388
cmp eax, ebp
jl 0x3477b6f9
mov ebx, dword [esp + 0x2ac]
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0x74]
push 0x34772824
push ebx
push esi
call eax
cmp eax, ebp
jl 0x3477b6f9
mov edx, dword [0x347efae8]
mov eax, dword [edx + 0x9c]
push 1
push 0x10
lea ecx, [esp + 0x70]
push ecx
push ebx
push esi
call eax
cmp eax, ebp
jl 0x3477b6f9
mov ecx, dword [0x347efae8]
mov edx, dword [ecx + 0xa0]
push 1
push ebx
push esi
call edx
cmp eax, ebp
jl 0x3477b6f9
cmp dword [0x347719f4], ebp
mov edi, 0x347719f4
je 0x3477b5d8
lea ebx, [ebx]
mov ecx, dword [edi]
mov edx, dword [0x347efae8]
push ebp
push 0x18
lea eax, [esp + 0x58]
push eax
mov eax, dword [edx + 0xbc]
push ecx
push ebx
push esi
call eax
cmp eax, ebp
jl 0x3477b6f9
mov eax, dword [esp + 0x54]
push ebp
push ebp
lea ecx, [esp + 0x20]
push ecx
mov ecx, dword [0x347efae8]
push 0x200
lea edx, [esp + 0xa8]
push edx
mov edx, dword [ecx + 0x88]
push eax
push ebx
push esi
call edx
cmp eax, ebp
jl 0x3477b6f9
mov ecx, dword [edi]
mov edx, dword [esp + 0x2a8]
push ebp
push 0x18
lea eax, [esp + 0x58]
push eax
mov eax, dword [0x347efae8]
push ecx
mov ecx, dword [eax + 0xbc]
push edx
push esi
call ecx
cmp eax, ebp
jl 0x3477b6f9
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x54]
push ebp
push ebp
push edx
mov edx, dword [esp + 0x2b4]
lea eax, [esp + 0xa4]
push eax
mov eax, dword [0x347efae8]
push ecx
mov ecx, dword [eax + 0x8c]
push edx
push esi
call ecx
cmp eax, ebp
jl 0x3477b6f9
add edi, 4
cmp dword [edi], ebp
jne 0x3477b51e
mov eax, dword [esp + 0x30]
mov edi, dword [esp + 0x2a8]
mov ecx, dword [0x347efae8]
push ebp
push ebp
push 4
lea edx, [esp + 0x34]
push edx
mov edx, dword [ecx + 0x8c]
push eax
push edi
push esi
call edx
cmp eax, ebp
jl 0x3477b6f9
mov ecx, dword [esp + 0x2c]
mov edx, dword [0x347efae8]
push ebp
push ebp
push 0x10
lea eax, [esp + 0x94]
push eax
mov eax, dword [edx + 0x8c]
push ecx
push edi
push esi
call eax
cmp eax, ebp
jl 0x3477b6f9
mov edx, dword [esp + 0x24]
mov eax, dword [0x347efae8]
push ebp
push ebp
push 4
lea ecx, [esp + 0x2c]
push ecx
mov ecx, dword [eax + 0x8c]
push edx
push edi
push esi
call ecx
cmp eax, ebp
jl 0x3477b6f9
mov eax, dword [esp + 0x34]
mov ecx, dword [0x347efae8]
push ebp
push ebp
push 0x10
lea edx, [esp + 0x84]
push edx
mov edx, dword [ecx + 0x8c]
push eax
push edi
push esi
call edx
mov edi, eax
cmp edi, ebp
jl 0x3477b6f7
mov ecx, dword [0x347ed1c4]
imul ecx, ecx, 0x3e8
mov eax, 0x10624dd3
mul ecx
xor ebx, ebx
shr edx, 5
je 0x3477b6f7
mov ebp, dword [sym.imp.kernel32.dll_Sleep]
lea esp, [esp]
mov edx, dword [esp + 0x2a8]
mov eax, dword [0x347efae8]
mov ecx, dword [eax + 0x94]
push 0
push 0
push 0
push edx
push esi
call ecx
mov edi, eax
cmp edi, 0xfffffbae
je 0x3477b6d3
cmp edi, 0xfffffbaf
je 0x3477b6d3
cmp edi, 0xfffffbb2
jne 0x3477b6f7
push 0x1f4
call ebp
mov edx, dword [0x347ed1c4]
imul edx, edx, 0x3e8
mov eax, 0x10624dd3
mul edx
add ebx, 1
shr edx, 5
cmp ebx, edx
jb 0x3477b69d
mov eax, edi
pop edi
mov ecx, dword [esp + 0x294]
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.347ea89f
add esp, 0x28c
ret 0x28
mov ecx, dword [esp + 0x14]
mov edx, dword [0x347efae8]
push 0x18
lea eax, [esp + 0x58]
push eax
mov eax, dword [edx + 0xbc]
push 0x347727f4
push ecx
push esi
call eax
mov edi, eax
cmp edi, ebp
jl 0x3477b459
mov eax, dword [esp + 0x54]
push ebp
push ebp
lea ecx, [esp + 0x20]
push ecx
mov ecx, dword [esp + 0x1c]
push 4
lea edx, [esp + 0x30]
push edx
mov edx, dword [0x347efae8]
push eax
mov eax, dword [edx + 0x88]
push ecx
push esi
call eax
mov edi, eax
cmp edi, 0x3ec
jne 0x3477b459
mov dword [esp + 0x20], ebp
jmp 0x3477b459