Function at 0x4d4170
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x652c60
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.00402500
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.00402f70
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 0x4d41d0
sub eax, edi
mov edi, dword [ebp + 8]
push edi
push eax
push 1
push ecx
call fcn.00622cf5
mov edx, dword [esi + 0x2d4]
push edx
push str.nDATSTF_d_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f70
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 0x4d4206
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
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.00402f70
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 0x4d4240
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
mov eax, dword [esi + 0x270]
push eax
push str.nLevel_d_r_n
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f70
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 0x4d4273
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
mov edx, dword [esi + 0x274]
push edx
push str.nLevelOS_d_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f70
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 0x4d42a6
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
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.00402f70
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 0x4d42e0
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
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.00402f70
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 0x4d4318
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
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.00402f70
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 0x4d4350
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
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.00402f70
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 0x4d4388
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
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.00402f70
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 0x4d43c0
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
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.00402f70
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 0x4d43f8
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
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.00402f70
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 0x4d4430
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
mov eax, dword [esi + 0x280]
push eax
push str.includeFilter_ld_r_n
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f70
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 0x4d4463
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
mov edx, dword [esi + 0x290]
push edx
push str.excludeFilter_ld_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f70
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 0x4d4496
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
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.00402f70
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 0x4d44d0
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
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.00402f70
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 0x4d4508
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
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.00402f70
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 0x4d4540
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
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.00402f70
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 0x4d4578
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
mov eax, dword [esi + 0x2a4]
push eax
push str.saveMode_d_r_n
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f70
add esp, 0x1c
mov ecx, dword [ebp - 0x14]
mov eax, ecx
lea edx, [eax + 1]
jmp 0x4d45b0
mov bl, byte [eax]
inc eax
test bl, bl
jne 0x4d45b0
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
add esp, 0x10
cmp dword [esi + 0x2a4], 1
jne 0x4d4606
mov edx, dword [esi + 0x2c4]
push edx
push str.category_d_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f70
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 0x4d45f0
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622cf5
add esp, 0x10
mov ebx, 2
cmp dword [esi + 0x2a4], ebx
jne 0x4d4712
lea ecx, [ebp - 0x18]
call fcn.00402500
mov byte [ebp - 4], bl
cmp dword [esi + 0x2a8], 0
je 0x4d4633
mov eax, dword [esi + 0x2a8]
jmp 0x4d4639
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 0x4d46c6
push ebx
lea ecx, [ebp - 0x18]
call fcn.00402850
mov dword [ebp + 8], eax
cmp dword [esi + 0x2a8], 0
je 0x4d4674
mov eax, dword [esi + 0x2a8]
jmp 0x4d467a
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.00402f70
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 0x4d46b0
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
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.00402f70
add esp, 0xc
mov edx, dword [ebp - 0x14]
mov eax, edx
lea ebx, [eax + 1]
jmp 0x4d46f0
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d46f0
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622cf5
add esp, 0x10
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x18]
call fcn.00402570
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.00402f70
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 0x4d4737
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
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.00402f70
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 0x4d4770
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
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.00402f70
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 0x4d47a8
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
add esp, 0x10
cmp byte [esi + 0x240], bl
je 0x4d4836
mov eax, dword [esi + 0x244]
push eax
push str.minSzA_d_r_n
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f70
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 0x4d47e6
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622cf5
mov edx, dword [esi + 0x248]
push edx
push str.minSzU_d_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f70
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 0x4d4820
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
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.00402f70
add esp, 0xc
mov edx, dword [ebp - 0x14]
mov eax, edx
lea ebx, [eax + 1]
jmp 0x4d4860
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d4860
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622cf5
add esp, 0x10
cmp byte [esi + 0x241], 0
je 0x4d48e9
mov eax, dword [esi + 0x24c]
push eax
push str.maxSzA_d_r_n
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f70
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.00622cf5
mov edx, dword [esi + 0x250]
push edx
push str.maxSzU_d_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f70
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 0x4d48d3
sub eax, edx
push edi
push eax
push 1
push ecx
call fcn.00622cf5
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.00402f70
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 0x4d4910
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622cf5
add esp, 0x10
cmp byte [esi + 0x1dc], 0
je 0x4d4966
mov eax, dword [esi + 0x1d8]
push eax
push str.incSP_s_r_n
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f70
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 0x4d4950
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622cf5
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.00402f70
add esp, 0xc
mov edx, dword [ebp - 0x14]
mov eax, edx
lea ebx, [eax + 1]
jmp 0x4d4990
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d4990
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622cf5
add esp, 0x10
cmp byte [esi + 0x1fc], 0
je 0x4d49e6
mov ecx, dword [esi + 0x1f8]
push ecx
push str.excSP_s_r_n
lea edx, [ebp - 0x14]
push edx
call fcn.00402f70
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 0x4d49d0
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622cf5
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.00402f70
add esp, 0xc
mov edx, dword [ebp - 0x14]
mov eax, edx
lea ebx, [eax + 1]
jmp 0x4d4a10
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d4a10
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622cf5
add esp, 0x10
cmp byte [esi + 0x21c], 0
je 0x4d4a66
mov edx, dword [esi + 0x218]
push edx
push str.incFP_s_r_n
lea eax, [ebp - 0x14]
push eax
call fcn.00402f70
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 0x4d4a50
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622cf5
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.00402f70
add esp, 0xc
mov edx, dword [ebp - 0x14]
mov eax, edx
lea ebx, [eax + 1]
jmp 0x4d4a90
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4d4a90
sub eax, ebx
push edi
push eax
push 1
push edx
call fcn.00622cf5
add esp, 0x10
cmp byte [esi + 0x23c], 0
je 0x4d4ae6
mov eax, dword [esi + 0x238]
push eax
push str.excFP_s_r_n
lea ecx, [ebp - 0x14]
push ecx
call fcn.00402f70
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 0x4d4ad0
sub eax, esi
push edi
push eax
push 1
push edx
call fcn.00622cf5
add esp, 0x10
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x14]
call fcn.00402570
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