Function at 0x4d40c0
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x652bb0
mov eax, dword fs:[0]
push eax
sub esp, 0xc
push ebx
push esi
push edi
mov eax, dword [0x758898]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov esi, ecx
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.00402510
mov byte [ebp - 4], 1
mov eax, dword [esi + 0x268]
push eax
push str.nEATSTF_d_r_n
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f80
add esp, 0xc
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edi, [eax + 1]
mov dl, byte [eax]
inc eax
test dl, dl
jne 0x4d4120
sub eax, edi
mov edi, dword [ebp + 8]
push edi
push eax
push 1
push ecx
call fcn.00622dc5
mov edx, dword [esi + 0x2d4]
push edx
push str.nDATSTF_d_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d4156
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
xor ecx, ecx
cmp byte [esi + 0x26c], cl
setne cl
push ecx
push str.wholeSite_d_r_n
lea edx, [ebp - 0x14]
push edx
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov edi, edi
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d4190
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
mov eax, dword [esi + 0x270]
push eax
push str.nLevel_d_r_n
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d41c3
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
mov edx, dword [esi + 0x274]
push edx
push str.nLevelOS_d_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d41f6
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
xor ecx, ecx
cmp byte [esi + 0x29b], cl
setne cl
push ecx
push str.allSOMD_d_r_n
lea edx, [ebp - 0x14]
push edx
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov edi, edi
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d4230
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
xor eax, eax
cmp byte [esi + 0x29c], al
setne al
push eax
push str.igPp_d_r_n
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d4268
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
xor edx, edx
cmp byte [esi + 0x2a0], dl
setne dl
push edx
push str.dwnlAO_d_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d42a0
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
xor ecx, ecx
cmp byte [esi + 0x29f], cl
setne cl
push ecx
push str.dntAddMrrs_d_r_n
lea edx, [ebp - 0x14]
push edx
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d42d8
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
xor eax, eax
cmp byte [esi + 0x29a], al
setne al
push eax
push str.dnp_d_r_n
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d4310
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
xor edx, edx
cmp byte [esi + 0x29d], dl
setne dl
push edx
push str.prJava_d_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d4348
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
xor ecx, ecx
cmp byte [esi + 0x29e], cl
setne cl
push ecx
push str.goTSF_d_r_n
lea edx, [ebp - 0x14]
push edx
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d4380
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
mov eax, dword [esi + 0x280]
push eax
push str.includeFilter_ld_r_n
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d43b3
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
mov edx, dword [esi + 0x290]
push edx
push str.excludeFilter_ld_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d43e6
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
xor ecx, ecx
cmp byte [esi + 0x2d8], cl
setne cl
push ecx
push str.autoAdd_d_r_n
lea edx, [ebp - 0x14]
push edx
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov edi, edi
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d4420
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
xor eax, eax
cmp byte [esi + 0x2ca], al
setne al
push eax
push str.useDescr_d_r_n
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d4458
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
xor edx, edx
cmp byte [esi + 0x2cc], dl
setne dl
push edx
push str.useAdvWPP_d_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d4490
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
xor ecx, ecx
cmp byte [esi + 0x2cb], cl
setne cl
push ecx
push str.useIEC_d_r_n
lea edx, [ebp - 0x14]
push edx
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d44c8
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
mov eax, dword [esi + 0x2a4]
push eax
push str.saveMode_d_r_n
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
jmp 0x4d4500
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d4500
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
add esp, 0x10
cmp dword [esi + 0x2a4], 1
jne 0x4d4556
mov edx, dword [esi + 0x2c4]
push edx
push str.category_d_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f80
add esp, 0xc
mov edx, dword [ebp - 0x14]
mov eax, edx
lea ebx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d4540
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622dc5
add esp, 0x10
mov ebx, 2
cmp dword [esi + 0x2a4], ebx
jne 0x4d4662
lea ecx, [ebp - 0x18]
call fcn.00402510
mov byte [ebp - 4], bl
cmp dword [esi + 0x2a8], 0
je 0x4d4583
mov eax, dword [esi + 0x2a8]
jmp 0x4d4589
lea eax, [esi + 0x2ac]
push 0
push 0
push 0
push 0
push 0xffffffffffffffff
push eax
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov ebx, eax
test ebx, ebx
je 0x4d4616
push ebx
lea ecx, [ebp - 0x18]
call fcn.00402860
mov dword [ebp + 8], eax
cmp dword [esi + 0x2a8], 0
je 0x4d45c4
mov eax, dword [esi + 0x2a8]
jmp 0x4d45ca
lea eax, [esi + 0x2ac]
push 0
push 0
push ebx
mov ecx, dword [ebp + 8]
push ecx
push 0xffffffffffffffff
push eax
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov edx, dword [ebp + 8]
push edx
push str.wsaveto_s_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f80
add esp, 0xc
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d4600
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
add esp, 0x10
xor ecx, ecx
cmp byte [esi + 0x2b4], cl
setne cl
push ecx
push str.usesubf_d_r_n
lea edx, [ebp - 0x14]
push edx
call fcn.00402f80
add esp, 0xc
mov edx, dword [ebp - 0x14]
mov eax, edx
lea ebx, [eax + 1]
jmp 0x4d4640
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d4640
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622dc5
add esp, 0x10
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x18]
call fcn.00402580
xor eax, eax
cmp byte [esi + 0x2c8], al
setne al
push eax
push str.replHtmlLnk_d_r_n
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f80
add esp, 0xc
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d4687
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
xor edx, edx
cmp byte [esi + 0x2c9], dl
setne dl
push edx
push str.overwrEx_d_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
nop
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d46c0
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
xor ecx, ecx
cmp byte [esi + 0x240], cl
setne cl
push ecx
push str.useMinSz_d_r_n
lea edx, [ebp - 0x14]
push edx
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d46f8
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
add esp, 0x10
cmp byte [esi + 0x240], bl
je 0x4d4786
mov eax, dword [esi + 0x244]
push eax
push str.minSzA_d_r_n
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f80
add esp, 0xc
mov edx, dword [ebp - 0x14]
mov eax, edx
lea ebx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d4736
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622dc5
mov edx, dword [esi + 0x248]
push edx
push str.minSzU_d_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
lea esp, [esp]
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d4770
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
add esp, 0x10
xor ecx, ecx
cmp byte [esi + 0x241], cl
setne cl
push ecx
push str.useMaxSz_d_r_n
lea edx, [ebp - 0x14]
push edx
call fcn.00402f80
add esp, 0xc
mov edx, dword [ebp - 0x14]
mov eax, edx
lea ebx, [eax + 1]
jmp 0x4d47b0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d47b0
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622dc5
add esp, 0x10
cmp byte [esi + 0x241], 0
je 0x4d4839
mov eax, dword [esi + 0x24c]
push eax
push str.maxSzA_d_r_n
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f80
add esp, 0xc
mov edx, dword [ebp - 0x14]
mov eax, edx
lea ebx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d47f0
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622dc5
mov edx, dword [esi + 0x250]
push edx
push str.maxSzU_d_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f80
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d4823
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622dc5
add esp, 0x10
xor ecx, ecx
cmp byte [esi + 0x1dc], cl
setne cl
push ecx
push str.useIncSP_d_r_n
lea edx, [ebp - 0x14]
push edx
call fcn.00402f80
add esp, 0xc
mov edx, dword [ebp - 0x14]
mov eax, edx
lea ebx, [eax + 1]
mov edi, edi
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d4860
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622dc5
add esp, 0x10
cmp byte [esi + 0x1dc], 0
je 0x4d48b6
mov eax, dword [esi + 0x1d8]
push eax
push str.incSP_s_r_n
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f80
add esp, 0xc
mov edx, dword [ebp - 0x14]
mov eax, edx
lea ebx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d48a0
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622dc5
add esp, 0x10
xor edx, edx
cmp byte [esi + 0x1fc], dl
setne dl
push edx
push str.useExcSP_d_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f80
add esp, 0xc
mov edx, dword [ebp - 0x14]
mov eax, edx
lea ebx, [eax + 1]
jmp 0x4d48e0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d48e0
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622dc5
add esp, 0x10
cmp byte [esi + 0x1fc], 0
je 0x4d4936
mov ecx, dword [esi + 0x1f8]
push ecx
push str.excSP_s_r_n
lea edx, [ebp - 0x14]
push edx
call fcn.00402f80
add esp, 0xc
mov edx, dword [ebp - 0x14]
mov eax, edx
lea ebx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d4920
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622dc5
add esp, 0x10
xor eax, eax
cmp byte [esi + 0x21c], al
setne al
push eax
push str.useIncFP_d_r_n
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f80
add esp, 0xc
mov edx, dword [ebp - 0x14]
mov eax, edx
lea ebx, [eax + 1]
jmp 0x4d4960
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d4960
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622dc5
add esp, 0x10
cmp byte [esi + 0x21c], 0
je 0x4d49b6
mov edx, dword [esi + 0x218]
push edx
push str.incFP_s_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f80
add esp, 0xc
mov edx, dword [ebp - 0x14]
mov eax, edx
lea ebx, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d49a0
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622dc5
add esp, 0x10
xor ecx, ecx
cmp byte [esi + 0x23c], cl
setne cl
push ecx
push str.useExcFP_d_r_n
lea edx, [ebp - 0x14]
push edx
call fcn.00402f80
add esp, 0xc
mov edx, dword [ebp - 0x14]
mov eax, edx
lea ebx, [eax + 1]
jmp 0x4d49e0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d49e0
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622dc5
add esp, 0x10
cmp byte [esi + 0x23c], 0
je 0x4d4a36
mov eax, dword [esi + 0x238]
push eax
push str.excFP_s_r_n
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f80
add esp, 0xc
mov edx, dword [ebp - 0x14]
mov eax, edx
lea esi, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d4a20
sub eax, esi
push edi
push eax
push 1
push edx
call fcn.00622dc5
add esp, 0x10
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.00402580
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 4