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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x669f36
sub esp, 0x74
mov dword [esp + 0x1c], 0
lea eax, [0x76be89]
mov dword [esp], eax
mov dword [esp + 4], 0xe
call fcn.004e27c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
test eax, eax
jbe 0x669f2c
mov dword [esp], 2
mov dword [esp + 4], ecx
lea eax, [esp + 0x1c]
mov dword [esp + 8], eax
call fcn.004e3090
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
test eax, eax
jne 0x669c15
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x70], eax
mov ecx, dword [eax + 0x3c]
mov ecx, dword [eax + ecx + 0x80]
add ecx, eax
jmp 0x669c2c
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], edx
add esp, 0x74
ret
mov edx, dword [esp + 0x68]
lea ecx, [edx + 0x14]
mov eax, dword [esp + 0x70]
mov edx, dword [ecx + 0xc]
test edx, edx
je 0x669c7b
mov dword [esp + 0x68], ecx
lea ebx, [eax + edx]
movzx edx, byte [eax + edx]
test dl, dl
je 0x669c4b
mov edx, ebx
xor ebp, ebp
jmp 0x669eec
xor edx, edx
xor ebx, ebx
mov dword [esp], ebx
mov dword [esp + 4], edx
lea eax, [0x76a7a4]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 9
call fcn.004b4640
movzx eax, byte [esp + 0x10]
test al, al
je 0x669c21
jmp 0x669edd
mov edx, dword [ecx + 0xc]
test edx, edx
je 0x669c8e
mov edx, dword [ecx]
add edx, eax
nop
mov ecx, dword [ecx + 0x10]
add ecx, eax
jmp 0x669cc7
lea eax, [0x73caa0]
mov dword [esp], eax
call fcn.0040b440
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x13
lea ecx, [0x76de77]
mov dword [eax], ecx
lea ecx, [0x7ca6cc]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
add esp, 0x74
ret
add edx, 4
add ecx, 4
mov dword [esp + 0x64], ecx
mov ebx, dword [edx]
test ebx, ebx
je 0x669cfc
test ebx, 0x80000000
jne 0x669cc1
mov dword [esp + 0x6c], edx
lea ebp, [eax + ebx + 2]
movzx ebx, byte [eax + ebx + 2]
test bl, bl
jne 0x669cf3
xor ebx, ebx
xor ebp, ebp
jmp 0x669e89
mov ebx, ebp
xor esi, esi
jmp 0x669e43
mov eax, dword [edx]
test eax, eax
je 0x669e0e
mov dword [esp + 0x20], 0
mov dword [esp], ecx
mov dword [esp + 4], 4
mov dword [esp + 8], 4
lea ecx, [esp + 0x20]
mov dword [esp + 0xc], ecx
call fcn.004e39f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
test eax, eax
jne 0x669e02
mov eax, dword [esp + 0x64]
mov ecx, dword [eax]
mov dword [esp + 0x18], ecx
lea edx, [0x7409e0]
mov dword [esp], edx
call fcn.0040b440
mov eax, dword [esp + 4]
lea ecx, [0x669f40]
mov dword [eax], ecx
mov ecx, dword [0x900e70]
test ecx, ecx
jne 0x669d79
mov ecx, dword [esp + 0x64]
mov dword [eax + 4], ecx
jmp 0x669d89
lea edi, [eax + 4]
mov ecx, eax
mov eax, dword [esp + 0x64]
call fcn.00456ac0
mov eax, ecx
mov ecx, dword [esp + 0x18]
mov dword [eax + 8], ecx
nop
lea ecx, [0x733d20]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov byte [esp + 8], 1
call fcn.004541c0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x64]
mov dword [ecx], eax
mov eax, dword [esp + 0x20]
mov dword [esp], ecx
mov dword [esp + 4], 4
mov dword [esp + 8], eax
lea eax, [esp + 0x20]
mov dword [esp + 0xc], eax
call fcn.004e39f0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
test eax, eax
je 0x669dee
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], edx
add esp, 0x74
ret
mov dword [esp + 0x78], 0
mov dword [esp + 0x7c], 0
add esp, 0x74
ret
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], edx
add esp, 0x74
ret
lea eax, [0x73caa0]
mov dword [esp], eax
call fcn.0040b440
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1b
lea ecx, [0x7719fc]
mov dword [eax], ecx
lea ecx, [0x7ca6cc]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], eax
add esp, 0x74
ret
inc esi
inc ebp
movzx edi, byte [ebp]
xchg edi, eax
test al, al
xchg edi, eax
jne 0x669e41
test esi, esi
jl 0x669ed8
mov ebp, ebx
neg ebx
cmp esi, ebx
ja 0x669ed3
lea eax, [esp + 0x24]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call fcn.00445730
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x6c]
mov ebx, ecx
mov ebp, eax
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x64]
cmp ebx, 0x11
jne 0x669cc1
mov dword [esp], ebp
lea eax, str.RtlPcToFileHeaderSeBackupPrivilegeSentence_TerminalSystemFunction036Too_Many_RequestsTransfer_EncodingUnaligned_sectionUnified_IdeographWSAEnumProtocolsWWTSQueryUserTokenassertion_failurebad_TinySizeClassdecryption_failedentersyscallblockexec_format_errorfractional_secondframe_ping_lengthg_already_scannedgp.waiting___nilhandshake_failureif_modified_sinceillegal_parameterinteger_too_largeinvalid_BMPStringinvalid_IA5Stringinvalid_bit_size_locked_m0_woke_upmark___bad_statusmarkBits_overflowmissing_extensionno_data_availablenotetsleepg_on_g0permission_deniedreflect.Value.Intreflect.Value.Lenreflect:_New_nil_reflect:_call_of_runtime.newosprocruntime_internal_scanobject_n__0select__no_cases_swept_cached_spansync.RWMutex.Lockthread_exhaustiontransfer_encodingunknown_caller_pcunknown_type_kindunrecognized_namewait_for_GC_cyclewine_get_version
mov dword [esp + 4], eax
mov dword [esp + 8], 0x11
call fcn.00403310
movzx eax, byte [esp + 0xc]
test al, al
jne 0x669ec6
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x6c]
jmp 0x669cc1
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x6c]
jmp 0x669cfc
call fcn.00450480
call fcn.00450480
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x68]
jmp 0x669c7b
inc ebp
inc ebx
movzx esi, byte [ebx]
xchg esi, eax
test al, al
xchg esi, eax
jne 0x669eea
test ebp, ebp
jl 0x669f27
mov ebx, edx
neg edx
cmp ebp, edx
ja 0x669f22
lea eax, [esp + 0x44]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
call fcn.00445730
mov ebx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
jmp 0x669c4f
call fcn.00450480
call fcn.00450480
xor eax, eax
mov ecx, eax
call fcn.00456b40
nop
call fcn.00455690
jmp fcn.00669b90