Function at 0x100ba95a
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2b0
mov eax, dword [0x100e7260]
xor eax, ebp
mov dword [ebp - 4], eax
and dword [ebp - 0x264], 0
and dword [ebp - 0x260], 0
xorpd xmm0, xmm0
movlpd qword [ebp - 0x270], xmm0
mov eax, dword [ebp + 0xc]
and dword [eax], 0
cmp dword [ebp + 0x10], 0
jne 0x100ba99e
mov eax, dword [ebp - 0x260]
jmp 0x100bb15d
push 0x2a
lea eax, [ebp - 0x5c]
push eax
push dword [ebp + 8]
call fcn.100b90bc
add esp, 0xc
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
je 0x100ba9c9
mov eax, dword [ebp - 0x260]
jmp 0x100bb15d
cmp dword [ebp + 0x14], 0
je 0x100ba9da
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x29c], eax
jmp 0x100ba9e4
mov dword [ebp - 0x29c], str.Content_Type:_multipart_form_data
lea eax, [ebp - 0x5c]
push eax
push dword [ebp - 0x29c]
push str._s__boundary_s_r_n
push 0
lea eax, [ebp - 0x264]
push eax
call fcn.100b95ee
add esp, 0x14
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
je 0x100baa1e
mov eax, dword [ebp - 0x260]
jmp 0x100bb15d
mov eax, dword [ebp - 0x264]
mov dword [ebp - 0x2a8], eax
mov eax, dword [ebp - 0x270]
or eax, dword [ebp - 0x26c]
je 0x100baa67
push 0x100f2454
lea eax, [ebp - 0x270]
push eax
lea eax, [ebp - 0x264]
push eax
call fcn.100b95ee
add esp, 0xc
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
je 0x100baa67
jmp 0x100bb0ec
lea eax, [ebp - 0x5c]
push eax
push str.___s_r_n
lea eax, [ebp - 0x270]
push eax
lea eax, [ebp - 0x264]
push eax
call fcn.100b95ee
add esp, 0x10
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
je 0x100baa9a
jmp 0x100bb0ec
push str.Content_Disposition:_form_data__name_
lea eax, [ebp - 0x270]
push eax
lea eax, [ebp - 0x264]
push eax
call fcn.100b95ee
add esp, 0xc
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
je 0x100baac9
jmp 0x100bb0ec
lea eax, [ebp - 0x270]
push eax
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 8]
cdq
push edx
push eax
mov eax, dword [ebp + 0x10]
push dword [eax + 4]
push 1
lea eax, [ebp - 0x264]
push eax
call fcn.100b964a
add esp, 0x18
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
je 0x100bab04
jmp 0x100bb0ec
push 0x100f2488
lea eax, [ebp - 0x270]
push eax
lea eax, [ebp - 0x264]
push eax
call fcn.100b95ee
add esp, 0xc
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
je 0x100bab33
jmp 0x100bb0ec
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x24], 0
je 0x100bab94
push 0x2a
lea eax, [ebp - 0x30]
push eax
push dword [ebp + 8]
call fcn.100b90bc
add esp, 0xc
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
je 0x100bab61
jmp 0x100bb0ec
lea eax, [ebp - 0x30]
push eax
push str._r_nContent_Type:_multipart_mixed__boundary_s_r_n
lea eax, [ebp - 0x270]
push eax
lea eax, [ebp - 0x264]
push eax
call fcn.100b95ee
add esp, 0x10
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
je 0x100bab94
jmp 0x100bb0ec
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x268], eax
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x24], 0
je 0x100bac0b
lea eax, [ebp - 0x30]
push eax
push str._r_n___s_r_nContent_Disposition:_attachment
lea eax, [ebp - 0x270]
push eax
lea eax, [ebp - 0x264]
push eax
call fcn.100b95ee
add esp, 0x10
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
je 0x100babd9
jmp 0x100bb096
lea eax, [ebp - 0x270]
push eax
lea eax, [ebp - 0x264]
push eax
push dword [ebp - 0x268]
call fcn.100b91e0
add esp, 0xc
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
je 0x100bac09
jmp 0x100bb096
jmp 0x100bac57
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x28]
and eax, 0x51
je 0x100bac57
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x2c], 0
jne 0x100bac2a
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x28]
and eax, 1
je 0x100bac49
lea eax, [ebp - 0x270]
push eax
lea eax, [ebp - 0x264]
push eax
push dword [ebp + 0x10]
call fcn.100b91e0
add esp, 0xc
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
je 0x100bac57
jmp 0x100bb096
mov eax, dword [ebp - 0x268]
cmp dword [eax + 0x1c], 0
je 0x100bac9b
mov eax, dword [ebp - 0x268]
push dword [eax + 0x1c]
push str._r_nContent_Type:__s
lea eax, [ebp - 0x270]
push eax
lea eax, [ebp - 0x264]
push eax
call fcn.100b95ee
add esp, 0x10
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
je 0x100bac9b
jmp 0x100bb096
mov eax, dword [ebp - 0x268]
mov eax, dword [eax + 0x20]
mov dword [ebp - 0x27c], eax
cmp dword [ebp - 0x27c], 0
je 0x100bacf8
mov eax, dword [ebp - 0x27c]
push dword [eax]
push str._r_n_s
lea eax, [ebp - 0x270]
push eax
lea eax, [ebp - 0x264]
push eax
call fcn.100b95ee
add esp, 0x10
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
je 0x100bace7
jmp 0x100bacf8
mov eax, dword [ebp - 0x27c]
mov eax, dword [eax + 4]
mov dword [ebp - 0x27c], eax
jmp 0x100bacaa
cmp dword [ebp - 0x260], 0
je 0x100bad06
jmp 0x100bb096
push str._r_n_r_n
lea eax, [ebp - 0x270]
push eax
lea eax, [ebp - 0x264]
push eax
call fcn.100b95ee
add esp, 0xc
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
je 0x100bad35
jmp 0x100bb096
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x28]
and eax, 1
jne 0x100bad4f
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x28]
and eax, 2
je 0x100baf59
mov eax, dword [ebp - 0x268]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x284], eax
mov dword [ebp - 0x280], 0x100f2508
mov eax, dword [ebp - 0x280]
mov al, byte [eax]
mov byte [ebp - 0x271], al
mov ecx, dword [ebp - 0x284]
cmp al, byte [ecx]
jne 0x100badc3
cmp byte [ebp - 0x271], 0
je 0x100badba
mov eax, dword [ebp - 0x280]
mov al, byte [eax + 1]
mov byte [ebp - 0x272], al
mov ecx, dword [ebp - 0x284]
cmp al, byte [ecx + 1]
jne 0x100badc3
add dword [ebp - 0x280], 2
add dword [ebp - 0x284], 2
cmp byte [ebp - 0x272], 0
jne 0x100bad68
and dword [ebp - 0x288], 0
jmp 0x100badce
sbb eax, eax
or eax, 1
mov dword [ebp - 0x288], eax
mov eax, dword [ebp - 0x288]
mov dword [ebp - 0x2b0], eax
cmp dword [ebp - 0x2b0], 0
jne 0x100badef
mov dword [ebp - 0x2a4], 1
jmp 0x100badf6
and dword [ebp - 0x2a4], 0
cmp dword [ebp - 0x2a4], 0
je 0x100bae14
call fcn.1003f2c2
push 0x20
pop ecx
imul ecx, ecx, 0
add eax, ecx
mov dword [ebp - 0x2ac], eax
jmp 0x100bae2f
push 0x100f250c
mov eax, dword [ebp - 0x268]
push dword [eax + 0xc]
call fcn.1003ff20
pop ecx
pop ecx
mov dword [ebp - 0x2ac], eax
mov eax, dword [ebp - 0x2ac]
mov dword [ebp - 0x278], eax
cmp dword [ebp - 0x278], 0
je 0x100baf25
call fcn.1003f2c2
push 0x20
pop ecx
imul ecx, ecx, 0
add eax, ecx
cmp dword [ebp - 0x278], eax
je 0x100bae99
push dword [ebp - 0x278]
call fcn.100404f4
pop ecx
lea eax, [ebp - 0x270]
push eax
push 0
push 0
mov eax, dword [ebp - 0x268]
push dword [eax + 0xc]
push 4
lea eax, [ebp - 0x264]
push eax
call fcn.100b964a
add esp, 0x18
mov dword [ebp - 0x260], eax
jmp 0x100baf23
push dword [ebp - 0x278]
push 0x200
push 1
lea eax, [ebp - 0x25c]
push eax
call fcn.1003fa84
add esp, 0x10
mov dword [ebp - 0x2a0], eax
cmp dword [ebp - 0x2a0], 0
je 0x100baf23
lea eax, [ebp - 0x270]
push eax
mov eax, dword [ebp - 0x2a0]
xor ecx, ecx
push ecx
push eax
lea eax, [ebp - 0x25c]
push eax
push 2
lea eax, [ebp - 0x264]
push eax
call fcn.100b964a
add esp, 0x18
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
jne 0x100baf1c
push dword [ebp - 0x278]
call fcn.10041e52
pop ecx
test eax, eax
jne 0x100baf1c
push dword [ebp - 0x278]
call fcn.10041e78
pop ecx
test eax, eax
je 0x100baf1e
jmp 0x100baf23
jmp 0x100bae99
jmp 0x100baf54
cmp dword [ebp + 8], 0
je 0x100baf44
mov eax, dword [ebp - 0x268]
push dword [eax + 0xc]
push str.couldnt_open_file___s_
push dword [ebp + 8]
call fcn.10083b69
add esp, 0xc
mov eax, dword [ebp + 0xc]
and dword [eax], 0
mov dword [ebp - 0x260], 0x1a
jmp 0x100bb071
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x28]
and eax, 0x10
je 0x100baf96
lea eax, [ebp - 0x270]
push eax
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x18]
cdq
push edx
push eax
mov eax, dword [ebp + 0x10]
push dword [eax + 0x14]
push 2
lea eax, [ebp - 0x264]
push eax
call fcn.100b964a
add esp, 0x18
mov dword [ebp - 0x260], eax
jmp 0x100bb071
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x28]
and eax, 0x40
je 0x100bb00a
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x28]
and eax, 0x80
je 0x100bafc5
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x38]
mov dword [ebp - 0x290], ecx
mov eax, dword [eax + 0x3c]
mov dword [ebp - 0x28c], eax
jmp 0x100bafd8
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x10]
cdq
mov dword [ebp - 0x290], eax
mov dword [ebp - 0x28c], edx
lea eax, [ebp - 0x270]
push eax
push dword [ebp - 0x28c]
push dword [ebp - 0x290]
mov eax, dword [ebp + 0x10]
push dword [eax + 0x30]
push 3
lea eax, [ebp - 0x264]
push eax
call fcn.100b964a
add esp, 0x18
mov dword [ebp - 0x260], eax
jmp 0x100bb071
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x28]
and eax, 0x80
je 0x100bb02e
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x38]
mov dword [ebp - 0x298], ecx
mov eax, dword [eax + 0x3c]
mov dword [ebp - 0x294], eax
jmp 0x100bb041
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x10]
cdq
mov dword [ebp - 0x298], eax
mov dword [ebp - 0x294], edx
lea eax, [ebp - 0x270]
push eax
push dword [ebp - 0x294]
push dword [ebp - 0x298]
mov eax, dword [ebp + 0x10]
push dword [eax + 0xc]
push 2
lea eax, [ebp - 0x264]
push eax
call fcn.100b964a
add esp, 0x18
mov dword [ebp - 0x260], eax
mov eax, dword [ebp - 0x268]
mov eax, dword [eax + 0x24]
mov dword [ebp - 0x268], eax
cmp dword [ebp - 0x268], 0
je 0x100bb096
cmp dword [ebp - 0x260], 0
je 0x100bab9d
cmp dword [ebp - 0x260], 0
je 0x100bb0a1
jmp 0x100bb0ec
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x24], 0
je 0x100bb0da
lea eax, [ebp - 0x30]
push eax
push str._r_n___s__
lea eax, [ebp - 0x270]
push eax
lea eax, [ebp - 0x264]
push eax
call fcn.100b95ee
add esp, 0x10
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
je 0x100bb0da
jmp 0x100bb0ec
mov eax, dword [ebp + 0x10]
mov eax, dword [eax]
mov dword [ebp + 0x10], eax
cmp dword [ebp + 0x10], 0
jne 0x100baa2a
cmp dword [ebp - 0x260], 0
jne 0x100bb11a
lea eax, [ebp - 0x5c]
push eax
push str._r_n___s___r_n
lea eax, [ebp - 0x270]
push eax
lea eax, [ebp - 0x264]
push eax
call fcn.100b95ee
add esp, 0x10
mov dword [ebp - 0x260], eax
cmp dword [ebp - 0x260], 0
je 0x100bb138
lea eax, [ebp - 0x2a8]
push eax
call fcn.100bb1ad
pop ecx
mov eax, dword [ebp - 0x260]
jmp 0x100bb15d
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp - 0x270]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x26c]
mov dword [eax + 4], ecx
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x2a8]
mov dword [eax], ecx
mov eax, dword [ebp - 0x260]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1003d588
mov esp, ebp
pop ebp
ret