Function at 0x10010210
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x106c4
call fcn.1001b7d0
mov eax, dword [0x1004a870]
xor eax, ebp
mov dword [ebp - 4], eax
mov dword [ebp - 0x10680], 0
mov dword [ebp - 0x10660], 0
mov dword [ebp - 0x10648], 0
push 0x1003cef8
mov eax, dword [ebp + 0x10]
push eax
call fcn.1001b6e8
add esp, 8
mov dword [ebp - 0x10648], eax
cmp dword [ebp - 0x10648], 0
jne 0x1001028d
push 0
push 0
push 0x845
call fcn.100012e0
add esp, 0xc
push str._GetFileList__File_open_error...
call fcn.10001730
add esp, 4
jmp 0x10010911
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 0xc], 0
jne 0x100102b6
push 0
push 0
push 0x8a9
call fcn.100012e0
add esp, 0xc
jmp 0x10010911
mov dword [ebp - 0x10668], str.GET_DESKDOP
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x10670], eax
mov ecx, dword [ebp - 0x10670]
mov dx, word [ecx]
mov word [ebp - 0x10688], dx
mov eax, dword [ebp - 0x10668]
cmp dx, word [eax]
jne 0x10010332
cmp word [ebp - 0x10688], 0
je 0x10010326
mov ecx, dword [ebp - 0x10670]
mov dx, word [ecx + 2]
mov word [ebp - 0x10690], dx
mov eax, dword [ebp - 0x10668]
cmp dx, word [eax + 2]
jne 0x10010332
add dword [ebp - 0x10670], 4
add dword [ebp - 0x10668], 4
cmp word [ebp - 0x10690], 0
jne 0x100102cc
mov dword [ebp - 0x1069c], 0
jmp 0x1001033d
sbb ecx, ecx
or ecx, 1
mov dword [ebp - 0x1069c], ecx
mov edx, dword [ebp - 0x1069c]
mov dword [ebp - 0x106ac], edx
cmp dword [ebp - 0x106ac], 0
jne 0x1001036a
push 0
push 0x10
lea eax, [ebp - 0x1061c]
push eax
push 0
call dword [0x100382a0]
jmp 0x10010770
mov dword [ebp - 0x1065c], str.GET_BITBUCKET
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0x10678], edx
mov eax, dword [ebp - 0x10678]
mov cx, word [eax]
mov word [ebp - 0x1068c], cx
mov edx, dword [ebp - 0x1065c]
cmp cx, word [edx]
jne 0x100103e6
cmp word [ebp - 0x1068c], 0
je 0x100103da
mov eax, dword [ebp - 0x10678]
mov cx, word [eax + 2]
mov word [ebp - 0x1068e], cx
mov edx, dword [ebp - 0x1065c]
cmp cx, word [edx + 2]
jne 0x100103e6
add dword [ebp - 0x10678], 4
add dword [ebp - 0x1065c], 4
cmp word [ebp - 0x1068e], 0
jne 0x10010380
mov dword [ebp - 0x106a8], 0
jmp 0x100103f1
sbb eax, eax
or eax, 1
mov dword [ebp - 0x106a8], eax
mov ecx, dword [ebp - 0x106a8]
mov dword [ebp - 0x106b0], ecx
cmp dword [ebp - 0x106b0], 0
jne 0x1001041e
push 0
push 0xa
lea edx, [ebp - 0x1061c]
push edx
push 0
call dword [0x100382a0]
jmp 0x10010770
mov dword [ebp - 0x1066c], str.GET_PERSONAl
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0x10664], ecx
mov edx, dword [ebp - 0x10664]
mov ax, word [edx]
mov word [ebp - 0x10692], ax
mov ecx, dword [ebp - 0x1066c]
cmp ax, word [ecx]
jne 0x1001049a
cmp word [ebp - 0x10692], 0
je 0x1001048e
mov edx, dword [ebp - 0x10664]
mov ax, word [edx + 2]
mov word [ebp - 0x10696], ax
mov ecx, dword [ebp - 0x1066c]
cmp ax, word [ecx + 2]
jne 0x1001049a
add dword [ebp - 0x10664], 4
add dword [ebp - 0x1066c], 4
cmp word [ebp - 0x10696], 0
jne 0x10010434
mov dword [ebp - 0x106a4], 0
jmp 0x100104a5
sbb edx, edx
or edx, 1
mov dword [ebp - 0x106a4], edx
mov eax, dword [ebp - 0x106a4]
mov dword [ebp - 0x106b4], eax
cmp dword [ebp - 0x106b4], 0
jne 0x100104d2
push 0
push 5
lea ecx, [ebp - 0x1061c]
push ecx
push 0
call dword [0x100382a0]
jmp 0x10010770
mov dword [ebp - 0x10674], str.GET_DRIVES
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x10658], eax
mov ecx, dword [ebp - 0x10658]
mov dx, word [ecx]
mov word [ebp - 0x10694], dx
mov eax, dword [ebp - 0x10674]
cmp dx, word [eax]
jne 0x1001054e
cmp word [ebp - 0x10694], 0
je 0x10010542
mov ecx, dword [ebp - 0x10658]
mov dx, word [ecx + 2]
mov word [ebp - 0x1068a], dx
mov eax, dword [ebp - 0x10674]
cmp dx, word [eax + 2]
jne 0x1001054e
add dword [ebp - 0x10658], 4
add dword [ebp - 0x10674], 4
cmp word [ebp - 0x1068a], 0
jne 0x100104e8
mov dword [ebp - 0x106a0], 0
jmp 0x10010559
sbb ecx, ecx
or ecx, 1
mov dword [ebp - 0x106a0], ecx
mov edx, dword [ebp - 0x106a0]
mov dword [ebp - 0x106c0], edx
cmp dword [ebp - 0x106c0], 0
jne 0x10010704
lea eax, [ebp - 0x61c]
push eax
push 0x104
call dword [0x1003815c]
lea ecx, [ebp - 0x61c]
mov dword [ebp - 0x1064c], ecx
xor edx, edx
mov dword [ebp - 0x10644], edx
mov dword [ebp - 0x10640], edx
mov dword [ebp - 0x1063c], edx
mov dword [ebp - 0x10638], edx
mov dword [ebp - 0x10634], edx
mov dword [ebp - 0x10630], edx
mov dword [ebp - 0x1062c], edx
mov dword [ebp - 0x10628], edx
mov dword [ebp - 0x10624], edx
mov dword [ebp - 0x10620], edx
mov eax, dword [ebp - 0x1064c]
movzx ecx, word [eax]
test ecx, ecx
je 0x100106f8
push 4
mov edx, dword [ebp - 0x1064c]
push edx
lea eax, [ebp - 0x10644]
push eax
call fcn.1000d3c0
add esp, 0xc
mov ecx, dword [ebp - 0x1064c]
push ecx
call dword [0x10038168]
mov dword [ebp - 0x1063c], eax
cmp dword [ebp - 0x1063c], 3
jne 0x10010635
lea edx, [ebp - 0x10624]
push edx
lea eax, [ebp - 0x1062c]
push eax
lea ecx, [ebp - 0x10634]
push ecx
mov edx, dword [ebp - 0x1064c]
push edx
call dword [0x10038170]
mov eax, dword [ebp - 0x10648]
push eax
push 1
push 0x28
lea ecx, [ebp - 0x10644]
push ecx
call fcn.1001b666
add esp, 0x10
xor edx, edx
mov dword [ebp - 0x10644], edx
mov dword [ebp - 0x10640], edx
mov dword [ebp - 0x1063c], edx
mov dword [ebp - 0x10638], edx
mov dword [ebp - 0x10634], edx
mov dword [ebp - 0x10630], edx
mov dword [ebp - 0x1062c], edx
mov dword [ebp - 0x10628], edx
mov dword [ebp - 0x10624], edx
mov dword [ebp - 0x10620], edx
mov eax, dword [ebp - 0x1064c]
mov dword [ebp - 0x10650], eax
mov ecx, dword [ebp - 0x10650]
add ecx, 2
mov dword [ebp - 0x106bc], ecx
mov edx, dword [ebp - 0x10650]
mov ax, word [edx]
mov word [ebp - 0x10686], ax
add dword [ebp - 0x10650], 2
cmp word [ebp - 0x10686], 0
jne 0x100106a8
mov ecx, dword [ebp - 0x10650]
sub ecx, dword [ebp - 0x106bc]
sar ecx, 1
mov dword [ebp - 0x106b8], ecx
mov edx, dword [ebp - 0x106b8]
mov eax, dword [ebp - 0x1064c]
lea ecx, [eax + edx*2 + 2]
mov dword [ebp - 0x1064c], ecx
jmp 0x100105ce
jmp 0x10010816
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x10684], eax
lea ecx, [ebp - 0x1061c]
mov dword [ebp - 0x1067c], ecx
mov edx, dword [ebp - 0x1067c]
mov dword [ebp - 0x106c4], edx
mov eax, dword [ebp - 0x10684]
mov cx, word [eax]
mov word [ebp - 0x10652], cx
mov edx, dword [ebp - 0x1067c]
mov ax, word [ebp - 0x10652]
mov word [edx], ax
mov ecx, dword [ebp - 0x10684]
add ecx, 2
mov dword [ebp - 0x10684], ecx
mov edx, dword [ebp - 0x1067c]
add edx, 2
mov dword [ebp - 0x1067c], edx
cmp word [ebp - 0x10652], 0
jne 0x10010728
lea eax, [ebp - 0x1061c]
push eax
call dword [0x100382ac]
test eax, eax
jne 0x100107ba
mov ecx, dword [ebp - 0x10648]
push ecx
call fcn.1001b496
add esp, 4
push 0
push 0
push 0x8a9
call fcn.100012e0
add esp, 0xc
push str.__rN_f
call fcn.10001730
add esp, 4
jmp 0x10010911
mov edx, dword [ebp - 0x10648]
push edx
lea eax, [ebp - 0x1061c]
push eax
call fcn.10017f80
add esp, 8
mov dword [ebp - 0x10660], eax
cmp dword [ebp - 0x10660], 0
jne 0x10010816
mov ecx, dword [ebp - 0x10648]
push ecx
call fcn.1001b496
add esp, 4
push 0
push 0
push 0x90d
call fcn.100012e0
add esp, 0xc
push 0x1003cfc0
call fcn.10001730
add esp, 4
jmp 0x10010911
mov edx, dword [ebp - 0x10648]
push edx
call fcn.1001b496
add esp, 4
push 0x208
push 0
lea eax, [ebp - 0x414]
push eax
call fcn.1001afa0
add esp, 0xc
cmp dword [0x1004a0a8], 0xfad
jne 0x1001087f
push 0x1003cfd4
push 0x1003cfe0
mov ecx, dword [0x1004c420]
push ecx
mov edx, dword [0x1004c410]
push edx
push 0x1003cfe8
push 0x1003cffc
push 0x208
lea eax, [ebp - 0x414]
push eax
call fcn.10017630
add esp, 0x20
jmp 0x100108b5
push str.F.bin
push 0x1003d02c
mov ecx, dword [0x1004c420]
push ecx
mov edx, dword [0x1004c410]
push edx
push 0x1003d034
push 0x1003d044
push 0x208
lea eax, [ebp - 0x414]
push eax
call fcn.10017630
add esp, 0x20
mov ecx, dword [ebp + 0x10]
push ecx
lea edx, [ebp - 0x414]
push edx
push 0xbc8
mov eax, dword [ebp + 8]
push eax
call fcn.1000ad30
add esp, 0x10
mov dword [ebp - 0x10660], eax
cmp dword [ebp - 0x10660], 0
jne 0x10010902
push 0
push 0
push 0x90d
call fcn.100012e0
add esp, 0xc
push str._GetFileList_
call fcn.10001730
add esp, 4
jmp 0x10010911
mov ecx, dword [ebp - 0x10680]
add ecx, 1
mov dword [ebp - 0x10680], ecx
mov eax, dword [ebp - 0x10680]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1001a094
mov esp, ebp
pop ebp
ret