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

Disassembly:
mov ecx, dword [0x98cddc]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4e5b2c
sub esp, 0x70
lea eax, [0x7117e0]
mov dword [esp], eax
call fcn.0040bc10
mov eax, dword [esp + 4]
mov dword [esp + 0x54], eax
mov dword [eax + 0x14], 5
mov ecx, dword [esp + 0x74]
mov dword [esp], ecx
mov edx, dword [esp + 0x78]
mov dword [esp + 4], edx
lea ebx, [0x729ddb]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 5
call fcn.004e0010
mov eax, dword [esp + 0x10]
cmp eax, 0xffffffff
jne 0x4e54b7
mov eax, dword [esp + 0x78]
mov edx, dword [esp + 0x78]
cmp edx, eax
jb 0x4e5b24
mov ecx, dword [esp + 0x54]
mov dword [ecx + 0x20], eax
mov ebx, dword [0x98d0b8]
test ebx, ebx
jne 0x4e54da
mov ebx, dword [esp + 0x74]
jmp 0x4e54eb
call fcn.00471ac0
mov ebx, dword [esp + 0x74]
mov dword [edi], ebx
mov ebp, dword [ecx + 0x1c]
mov dword [edi + 4], ebp
mov dword [ecx + 0x1c], ebx
cmp eax, 4
jne 0x4e54fb
cmp dword [ebx], 0x6c6d7468
je 0x4e5502
mov ebp, 1
jmp 0x4e5504
xor ebp, ebp
mov dword [esp + 0x24], eax
xchg ebp, eax
mov byte [esp + 0x23], al
xchg ebp, eax
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.004e14a0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x24]
sub ecx, edx
mov ebx, ecx
neg ecx
sar ecx, 0x1f
and ecx, edx
mov edx, dword [esp + 8]
mov ebp, dword [esp + 0x54]
mov dword [ebp + 0x20], eax
mov eax, dword [0x98d0b8]
mov esi, dword [esp + 0x74]
add ecx, esi
test eax, eax
je 0x4e5559
call fcn.00471ac0
mov dword [edi], edx
mov eax, dword [ebp + 0x1c]
mov dword [edi + 4], eax
mov dword [ebp + 0x1c], edx
mov dword [esp], ecx
mov dword [esp + 4], ebx
lea eax, [0x729ddb]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 5
call fcn.004e1d20
mov eax, dword [esp + 0x14]
cmp eax, 6
jl 0x4e55c0
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x50], eax
mov dword [esp], eax
mov dword [esp + 4], 6
call fcn.004e14a0
mov eax, dword [esp + 0x38]
add eax, 0xfffffffa
mov ecx, eax
neg eax
sar eax, 0x1f
and eax, 6
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x50]
add eax, ebp
jmp 0x4e55f8
movzx ecx, byte [esp + 0x23]
test cl, cl
je 0x4e55d0
mov eax, 1
jmp 0x4e55d5
test eax, eax
setne al
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x7c], ecx
mov byte [esp + 0x80], al
add esp, 0x70
ret
mov edx, dword [esp + 0x50]
mov ebx, eax
mov edx, ecx
mov ecx, dword [esp + 0x38]
mov eax, dword [esp + 0x50]
cmp ebx, 6
jne 0x4e5829
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x40], edx
cmp dword [edx], 0x6c627570
jne 0x4e561e
cmp word [edx + 4], 0x6369
je 0x4e563f
cmp ebx, 6
jmp 0x4e5621
cmp ebx, 6
jne 0x4e5829
cmp dword [edx], 0x74737973
jne 0x4e5829
cmp word [edx + 4], 0x6d65
jne 0x4e5829
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [0x729ddb]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 5
call fcn.004e1d20
mov eax, dword [esp + 0x14]
test eax, eax
je 0x4e5823
mov edx, dword [esp + 0x10]
movzx ebx, byte [edx]
cmp bl, 0x22
je 0x4e567e
cmp bl, 0x27
jne 0x4e581b
mov dword [esp + 0x34], eax
lea ecx, [eax - 1]
mov dword [esp + 0x30], ecx
mov ebp, ecx
neg ecx
sar ecx, 0x1f
and ecx, 1
add ecx, edx
mov dword [esp + 0x44], ecx
mov dword [esp], ecx
mov dword [esp + 4], ebp
movzx edx, bl
mov dword [esp + 8], edx
call fcn.004dfed0
mov ecx, dword [esp + 0xc]
cmp ecx, 0xffffffff
jne 0x4e56c3
mov ebp, dword [esp + 0x44]
mov ecx, dword [esp + 0x30]
xor ebx, ebx
xor edx, edx
jmp 0x4e56f2
mov edx, dword [esp + 0x30]
cmp ecx, edx
ja 0x4e5b1f
lea eax, [ecx + 1]
cmp eax, edx
ja 0x4e5b18
mov edx, dword [esp + 0x34]
sub edx, ecx
add edx, 0xfffffffe
mov ebx, edx
neg edx
sar edx, 0x1f
and edx, eax
mov ebp, dword [esp + 0x44]
add edx, ebp
mov dword [esp + 0x38], ebx
mov dword [esp + 0x50], edx
mov dword [esp + 0x30], ecx
lea edi, [esp + 0x58]
xor eax, eax
call fcn.00471d4a
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x60], ecx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], ebp
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x6c], ebp
mov ebp, dword [esp + 0x54]
mov esi, dword [ebp + 0x34]
mov edi, dword [ebp + 0x30]
inc edi
mov eax, dword [ebp + 0x2c]
cmp esi, edi
jae 0x4e579a
mov dword [esp], eax
mov dword [esp + 4], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x6fbde0]
mov dword [esp + 0x10], eax
call fcn.0046cad0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x54]
mov dword [ebx + 0x34], eax
mov eax, dword [0x98d0b8]
test eax, eax
je 0x4e5783
call fcn.00471ac0
mov dword [edi], ecx
mov ebp, dword [ebx + 0x2c]
mov dword [edi + 4], ebp
mov dword [ebx + 0x2c], ecx
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0x54]
mov edi, edx
mov eax, ecx
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x2c]
mov dword [ebp + 0x30], edi
mov esi, dword [0x98d0b8]
lea edi, [edi + edi*2]
lea edi, [eax + edi*8 - 0x18]
test esi, esi
je 0x4e57e0
mov dword [esp + 0x4c], edi
lea eax, [0x6fbde0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x58]
mov dword [esp + 8], eax
call fcn.0040eba0
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0x54]
mov edi, dword [esp + 0x4c]
lea esi, [esp + 0x58]
call fcn.00472224
cmp edx, 6
jne 0x4e5812
mov edx, dword [esp + 0x40]
cmp dword [edx], 0x6c627570
jne 0x4e5812
cmp word [edx + 4], 0x6369
jne 0x4e5812
mov eax, 6
lea ecx, str.systemSCRIPT:last_:input:empty__s__ssysmontimersefence__not__next_jobs_goid_sweep__B______util_alloc_free__span_prev_list__i___code_addr_m__p_p__mSCHED__curg_ctxt:_min__max_bad_ts_...__n_mnil_base_AnswerLengthX25519_w_.0wAcceptServerempty_rune1_rdtscppopcntcmd_gosecretSTREETavx512rdrandrdseedSynapseGlobal_float32float64abortedCopySidFreeSidSleepExWSARecvWSASendconnectsignal_windowsrunningwsarecvwsasendlookup_writetoUpgradeTrailersocks5hHEADERSReferer_flags_len_d__conn___v_v_expiresrefererrefreshtrailerGODEBUGname__q:method:schemeupgrade:statushttp:__chunkedCreatedIM_UsedCONNECTconsolePATHEXTTuesdayJanuaryOctoberMUI_StdMUI_DltAvestanBengaliBrailleCypriotDeseretElbasanElymaicGranthaHanunooKannadaMakasarMandaicMarchenMultaniMyanmarOsmanyaSharadaShavianSiddhamSinhalaSogdianSoyomboTagalogTibetanTirhuta19531259765625SHA_224SHA_256SHA_384SHA_512invaliduintptrChanDir_Value_ConvertaddressarticlebgsoundcaptiondetailslistingmarqueenoembedsectionsummaryAacute_Abreve_Agrave_Assign_Atilde_Barwed_Bumpeq_Cacute_Ccaron_Ccedil_Colone_Conint_CupCap_Dagger_Dcaron_DotDot_Dstrok_Eacute_Ecaron_Egrave_Exists_ForAll_Gammad_Gbreve_Gcedil_HARDcy_Hstrok_Iacute_Igrave_Itilde_Jsercy_Kcedil_Lacute_Lambda_Lcaron_Lcedil_Lmidot_Lstrok_Nacute_Ncaron_Ncedil_Ntilde_Oacute_Odblac_Ograve_Oslash_Otilde_Otimes_Racute_Rarrtl_Rcaron_Rcedil_SHCHcy_SOFTcy_Sacute_Scaron_Scedil_Square_Subset_Supset_Tcaron_Tcedil_Tstrok_Uacute_Ubreve_Udblac_Ugrave_Utilde_Vdashl_Verbar_Vvdash_Yacute_Zacute_Zcaron_aacute_abreve_agrave_andand_angmsd_angsph_apacir_approx_atilde_barvee_barwed_becaus_bernou_bigcap_bigcup_bigvee_bkarow_bottom_bowtie_boxbox_bprime_brvbar_bullet_bumpeq_cacute_capand_capcap_capcup_capdot_ccaron_ccedil_circeq_cirmid_colone_commat_compfn_conint_coprod_copysr_cularr_cupcap_cupcup_cupdot_curarr_curren_cylcty_dagger_daleth_dcaron_dfisht_divide_divonx_dlcorn_dlcrop_dollar_drcorn_drcrop_dstrok_eacute_easter_ecaron_ecolon_egrave_egsdot_elsdot_emptyv_emsp13_emsp14_eparsl_eqcirc_equals_equest_female_ffilig_ffllig_forall_frac12_frac13_frac14_frac15_frac16_frac18_frac23_frac25_frac34_frac35_frac38_frac45_frac56_frac58_frac78_gacute_gammad_gbreve_gesdot_gesles_gtlPar_gtrarr_gtrdot_gtrsim_hairsp_hamilt_hardcy_hearts_hellip_hercon_homtht_horbar_hslash_hstrok_hybull_hyphen_iacute_igrave_iiiint_iinfin_incare_inodot_intcal_iquest_isinsv_itilde_jsercy_kappav_kcedil_kgreen_lAtail_lacute_lagran_lambda_langle_larrfs_larrhk_larrlp_larrpl_larrtl_latail_lbrace_lbrack_lcaron_lcedil_ldquor_lesdot_lesges_lfisht_lfloor_lharul_llhard_lmidot_lmoust_loplus_lowast_lowbar_lparlt_lrhard_lsaquo_lsquor_lstrok_lthree_ltimes_ltlarr_ltrPar_mapsto_marker_mcomma_midast_midcir_middot_minusb_minusd_mnplus_models_mstpos_nVDash_nVdash_nacute_ncaron_ncedil_nearhk_nequiv_nesear_nexist_nltrie_nprcue_nrtrie_nsccue_nsimeq_ntilde_numero_nvDash_nvHarr_nvdash_nvlArr_nvrArr_nwarhk_nwnear_oacute_odblac_odsold_ograve_ominus_origof_oslash_otilde_otimes_parsim_percnt_period_permil_phmmat_planck_plankv_plusdo_plusdu_plusmn_preceq_primes_prnsim_propto_prurel_puncsp_qprime_rAtail_racute_rangle_rarrap_rarrfs_rarrhk_rarrlp_rarrpl_rarrtl_ratail_rbrace_rbrack_rcaron_rcedil_rdquor_rfisht_rfloor_rharul_rmoust_roplus_rpargt_rsaquo_rsquor_rthree_rtimes_sacute_scaron_scedil_scnsim_searhk_seswar_sfrown_shchcy_sigmaf_sigmav_simdot_smashp_softcy_solbar_spades_sqsube_sqsupe_square_squarf_ssetmn_ssmile_sstarf_subdot_subset_subsim_subsub_subsup_succeq_supdot_supset_supsim_supsub_supsup_swarhk_swnwar_target_tcaron_tcedil_telrec_there4_thetav_thinsp_thksim_timesb_timesd_topbot_topcir_tprime_tridot_tstrok_uacute_ubreve_udblac_ufisht_ugrave_ulcorn_ulcrop_urcorn_urcrop_utilde_vangrt_varphi_varrho_veebar_vellip_verbar_wedbar_wedgeq_weierp_wreath_xoplus_xotime_xsqcup_xuplus_xwedge_yacute_zacute_zcaron_zeetrf_nbumpe_notinE_nparsl_nrarrc_nrarrw_sqcaps_sqcups_vsubnE_vsubne_vsupnE_vsupne_feblendfefloodfefuncafefuncbfefuncgfefuncrfeimagefemergefeBlendfeFloodfeFuncAfeFuncBfeFuncGfeFuncRfeImagefeMergetargetxtargetyviewboxtargetXtargetYviewBoxDOCTYPE_CDATA_checked:_s__s_matches:first_of_typeforcegcallocmWcpuprofallocmRunknowngctraceI
jmp 0x4e55e8
xor eax, eax
xor ecx, ecx
jmp 0x4e55e8
mov ebx, dword [esp + 0x2c]
mov ecx, eax
jmp 0x4e5829
mov ebx, dword [esp + 0x2c]
mov ecx, eax
test ebx, ebx
jne 0x4e595a
test ecx, ecx
jne 0x4e595a
mov edx, dword [esp + 0x54]
mov ebx, dword [edx + 0x30]
test ebx, ebx
je 0x4e5953
mov ebx, dword [edx + 0x2c]
cmp dword [ebx + 0xc], 6
jne 0x4e594c
mov ebp, dword [ebx + 8]
cmp dword [ebp], 0x6c627570
jne 0x4e5945
cmp word [ebp + 4], 0x6369
jne 0x4e593e
mov eax, dword [ebx + 0x10]
mov ecx, dword [ebx + 0x14]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004e14a0
mov eax, dword [esp + 0xc]
mov dword [esp + 0x28], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x3c], ecx
cmp eax, 4
jne 0x4e58a5
cmp dword [ecx], 0x6c6d7468
jne 0x4e5911
jmp 0x4e5934
cmp eax, 0x22
je 0x4e58e6
cmp eax, 0x24
jne 0x4e5911
mov dword [esp], ecx
lea eax, [0x73bdab]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x24
call fcn.00402e10
movzx eax, byte [esp + 0xc]
test al, al
jne 0x4e58dc
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x3c]
jmp 0x4e5911
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x3c]
jmp 0x4e5934
mov dword [esp], ecx
lea eax, [0x73af44]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x22
call fcn.00402e10
movzx eax, byte [esp + 0xc]
test al, al
jne 0x4e592c
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x3c]
mov edx, dword [0x960d68]
mov dword [esp + 0x48], edx
mov ebx, dword [0x960d6c]
mov dword [esp + 0x38], ebx
xor ebp, ebp
jmp 0x4e5abb
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x3c]
mov edx, 1
jmp 0x4e5a1b
movzx eax, byte [esp + 0x23]
jmp 0x4e5972
movzx eax, byte [esp + 0x23]
jmp 0x4e5972
movzx eax, byte [esp + 0x23]
jmp 0x4e5972
movzx eax, byte [esp + 0x23]
jmp 0x4e595f
mov eax, 1
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x7c], ecx
mov byte [esp + 0x80], al
add esp, 0x70
ret
mov ecx, dword [edx + 0x30]
lea ebx, [ecx - 1]
cmp ecx, ebx
jbe 0x4e5a14
lea ecx, [ecx + ecx*2]
mov ebx, dword [edx + 0x2c]
lea esi, [ebx + ecx*8 - 0x18]
lea edi, [esp + 0x58]
call fcn.00472224
cmp dword [esp + 0x64], 6
jne 0x4e595f
mov ecx, dword [esp + 0x60]
cmp dword [ecx], 0x74737973
jne 0x4e595f
cmp word [ecx + 4], 0x6d65
jne 0x4e595f
mov byte [esp + 0x22], al
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.004e14a0
cmp dword [esp + 0xc], 0x3a
je 0x4e59d1
xor eax, eax
jmp 0x4e59f4
mov eax, dword [esp + 8]
mov dword [esp], eax
lea eax, [0x742db1]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x3a
call fcn.00402e10
movzx eax, byte [esp + 0xc]
test al, al
je 0x4e5a06
mov edx, dword [esp + 0x54]
mov eax, 1
jmp 0x4e595f
mov edx, dword [esp + 0x54]
movzx eax, byte [esp + 0x22]
jmp 0x4e595f
mov eax, ebx
call fcn.00471b30
mov ebx, dword [esp + 0x54]
cmp dword [ebx + 0x30], 1
jne 0x4e5ab1
mov byte [esp + 0x21], dl
cmp eax, 0x20
jge 0x4e5a36
xor ebp, ebp
jmp 0x4e5a68
mov dword [esp], ecx
lea eax, [0x739cb1]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x20
call fcn.00402e10
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0x3c]
movzx edx, byte [esp + 0x21]
mov ebx, dword [esp + 0x54]
mov ebp, eax
mov eax, dword [esp + 0x28]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x4e5a75
mov eax, 1
jmp 0x4e5aa8
nop
nop
cmp eax, 0x24
jge 0x4e5a80
xor eax, eax
jmp 0x4e5aa8
mov dword [esp], ecx
lea eax, [0x73bdcf]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x24
call fcn.00402e10
movzx eax, byte [esp + 0xc]
movzx edx, byte [esp + 0x21]
mov ebx, dword [esp + 0x54]
test al, al
je 0x4e5ab1
mov edx, 1
mov eax, edx
mov edx, ebx
jmp 0x4e5972
inc ebp
cmp ebp, ebx
jge 0x4e5b0e
lea esi, [edx + ebp*8]
mov edi, dword [esi + 4]
cmp edi, eax
jle 0x4e5acd
xor esi, esi
jmp 0x4e5afe
mov dword [esp + 0x34], ebp
mov eax, dword [esi]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edi
call fcn.00402e10
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0x34]
mov esi, eax
mov eax, dword [esp + 0x28]
xchg esi, eax
test al, al
xchg esi, eax
je 0x4e5aba
mov edx, 1
jmp 0x4e5a1b
movzx edx, byte [esp + 0x23]
jmp 0x4e5a1b
mov ecx, edx
call fcn.00471b90
call fcn.00471b50
mov ecx, eax
call fcn.00471b50
nop
call fcn.004706b0
jmp fcn.004e5450