Function at 0x4070f0
Capabilities:
Write file on windows

Disassembly:
push 0x34
mov eax, 0x464892
call fcn.00460433
mov edx, dword [ebp + 8]
lea ecx, [ebp - 0x3c]
call fcn.00405b63
xor edi, edi
mov dword [ebp - 4], edi
cmp dword [ebp - 0x3c], edi
jne 0x407128
or dword [ebp - 4], 0xffffffff
mov esi, dword [ebp - 0x34]
cmp esi, edi
je 0x407121
call fcn.00401000
xor al, al
jmp 0x4074d7
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x2c], eax
inc eax
push str.extensions
call fcn.00402520
pop ecx
cmp eax, edi
je 0x407146
call fcn.004025b3
jmp 0x407148
xor eax, eax
mov dword [ebp - 0x24], eax
cmp eax, edi
je 0x40715d
push str.settings
inc eax
call fcn.00402520
pop ecx
jmp 0x40715f
xor eax, eax
cmp eax, edi
je 0x40716c
call fcn.004025b3
mov ebx, eax
jmp 0x40716e
xor ebx, ebx
cmp ebx, edi
je 0x40717f
lea eax, [ebx + 1]
call fcn.004024fe
mov dword [ebp - 0x1c], eax
jmp 0x407182
mov dword [ebp - 0x1c], edi
cmp ebx, edi
je 0x407198
push str.gpdgdlcjhlbaphcjmagicjhhgfnkiihp
lea eax, [ebx + 1]
call fcn.00402520
pop ecx
mov esi, eax
jmp 0x40719a
xor esi, esi
cmp esi, edi
je 0x4071a7
mov eax, esi
call fcn.004025b3
jmp 0x4071a9
xor eax, eax
cmp eax, edi
je 0x4071b7
inc eax
call fcn.004024fe
mov edi, eax
jmp 0x4071b9
xor edi, edi
test esi, esi
je 0x4071e6
test edi, edi
jne 0x4071cf
or dword [ebp - 4], 0xffffffff
mov esi, dword [ebp - 0x34]
test esi, esi
jmp 0x40711a
test esi, esi
jmp 0x4071df
movsx eax, byte [esi]
push eax
call fcn.004519bd
pop ecx
test eax, eax
je 0x4071e6
dec esi
cmp esi, ebx
ja 0x4071d3
mov dword [ebp - 0x14], edi
test edi, edi
jmp 0x4071f9
movsx eax, byte [edi]
push eax
call fcn.004519bd
pop ecx
test eax, eax
je 0x407204
inc edi
mov dword [ebp - 0x14], edi
cmp edi, dword [ebp - 0x1c]
jb 0x4071ed
xor eax, eax
test edi, edi
sete al
xor ecx, ecx
test esi, esi
sete cl
cmp ecx, eax
jne 0x4071c1
mov al, 0x2c
test esi, esi
je 0x407224
mov byte [ebp - 0xd], 1
cmp byte [esi], al
je 0x407228
mov byte [ebp - 0xd], 0
test edi, edi
je 0x407234
mov byte [ebp - 0xe], 1
cmp byte [edi], al
je 0x407238
mov byte [ebp - 0xe], 0
test esi, esi
je 0x407241
cmp byte [esi], al
jne 0x407241
dec esi
test edi, edi
je 0x40724d
cmp byte [edi], al
jne 0x40724d
inc edi
mov dword [ebp - 0x14], edi
test esi, esi
jne 0x407286
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x407286
lea esi, [eax - 1]
jmp 0x40726c
movsx eax, byte [esi]
push eax
call fcn.004519bd
pop ecx
test eax, eax
je 0x407270
dec esi
cmp esi, ebx
ja 0x40725d
cmp byte [esi], 0x7d
jne 0x407279
mov byte [ebp - 0xd], 1
mov eax, dword [ebp - 0x1c]
cmp esi, eax
jae 0x407283
lea eax, [esi + 1]
mov dword [ebp - 0x14], eax
xor eax, eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov byte [ebp - 4], 1
cmp esi, eax
je 0x40736c
mov bl, byte [esi + 1]
push eax
push eax
push eax
push eax
push eax
push eax
mov edi, 0x46c12a
mov byte [esi + 1], al
push edi
push dword [ebp - 0x38]
lea eax, [ebp - 0x30]
push eax
call fcn.004054e9
add esp, 0x24
mov byte [ebp - 4], 2
cmp dword [ebp - 0x30], 0
mov byte [esi + 1], bl
jne 0x4072e1
mov byte [ebp - 4], 1
mov esi, dword [ebp - 0x2c]
test esi, esi
je 0x4071c1
call fcn.00401000
jmp 0x4071c1
cmp byte [ebp - 0xe], 0
mov eax, 0x46ba80
mov ecx, eax
jne 0x4072f0
mov ecx, edi
cmp byte [ebp - 0xd], 0
je 0x4072f8
mov edi, eax
xor ebx, ebx
push ebx
push ebx
push ebx
push dword [ebp - 0x14]
lea eax, [ebp - 0x28]
push ecx
push dword [ebp + 0xc]
push edi
push dword [ebp - 0x30]
push eax
call fcn.004054e9
add esp, 0x24
mov ecx, eax
lea edi, [ebp - 0x20]
mov byte [ebp - 4], 3
call fcn.0040138b
mov byte [ebp - 4], 2
mov esi, dword [ebp - 0x24]
cmp esi, ebx
je 0x407332
call fcn.00401000
mov byte [ebp - 4], 1
mov esi, dword [ebp - 0x2c]
cmp dword [ebp - 0x20], ebx
jne 0x407365
cmp esi, ebx
je 0x407347
call fcn.00401000
mov byte [ebp - 4], 0
mov esi, dword [ebp - 0x1c]
cmp esi, ebx
je 0x407357
call fcn.00401000
or dword [ebp - 4], 0xffffffff
mov esi, dword [ebp - 0x34]
cmp esi, ebx
jmp 0x40711a
cmp esi, ebx
jmp 0x407466
cmp dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
jne 0x407377
mov eax, dword [ebp - 0x2c]
inc eax
call fcn.004024fe
mov esi, eax
test esi, esi
je 0x4071c1
lea edi, [esi - 1]
jmp 0x40739b
movsx eax, byte [edi]
push eax
call fcn.004519bd
pop ecx
test eax, eax
je 0x4073a0
dec edi
cmp edi, dword [ebp - 0x2c]
ja 0x40738c
cmp byte [edi], 0x7d
jne 0x4073a9
mov byte [ebp - 0xd], 1
mov bl, byte [esi]
xor eax, eax
push eax
push eax
push eax
push eax
push eax
push eax
mov edi, 0x46c12a
push edi
mov byte [esi], 0
push dword [ebp - 0x38]
lea eax, [ebp - 0x18]
push eax
call fcn.004054e9
add esp, 0x24
mov byte [ebp - 4], 4
mov byte [esi], bl
cmp dword [ebp - 0x18], 0
jne 0x4073e3
mov byte [ebp - 4], 1
mov esi, dword [ebp - 0x14]
jmp 0x4072cf
cmp dword [ebp - 0x24], 0
jne 0x4073f5
mov ecx, 0x46ba84
mov eax, str.____extensions_:__r_n
jmp 0x4073f9
mov ecx, edi
mov eax, edi
cmp byte [ebp - 0xd], 0
je 0x407404
mov edi, 0x46ba80
push esi
push ecx
push str._______r_n
push dword [ebp + 0xc]
push str._______settings_:__r_n
push eax
push edi
push dword [ebp - 0x18]
lea eax, [ebp - 0x30]
push eax
call fcn.004054e9
add esp, 0x24
mov ecx, eax
lea edi, [ebp - 0x20]
mov byte [ebp - 4], 5
call fcn.0040138b
mov byte [ebp - 4], 4
mov esi, dword [ebp - 0x2c]
test esi, esi
je 0x407442
call fcn.00401000
mov byte [ebp - 4], 1
cmp dword [ebp - 0x20], 0
mov esi, dword [ebp - 0x14]
jne 0x407464
test esi, esi
je 0x407458
call fcn.00401000
mov byte [ebp - 4], 0
mov esi, dword [ebp - 0x1c]
jmp 0x4072cf
test esi, esi
je 0x40746d
call fcn.00401000
push 0x46b81c
push dword [ebp + 8]
call fcn.00450b6d
pop ecx
pop ecx
mov edi, eax
test edi, edi
je 0x407458
mov eax, dword [ebp - 0x20]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x407488
sub eax, edx
push edi
mov esi, eax
push esi
push 1
push dword [ebp - 0x20]
call fcn.00450f42
add esp, 0x10
push edi
cmp esi, eax
je 0x4074af
call fcn.00451328
pop ecx
jmp 0x407458
call fcn.00451328
mov byte [ebp - 4], 0
mov esi, dword [ebp - 0x1c]
pop ecx
test esi, esi
je 0x4074c5
call fcn.00401000
or dword [ebp - 4], 0xffffffff
mov esi, dword [ebp - 0x34]
test esi, esi
je 0x4074d5
call fcn.00401000
mov al, 1
call fcn.004604d2
ret