Function at 0x4646b7
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x230
mov eax, dword [0x52fe80]
xor eax, ebp
mov dword [ebp - 8], eax
push ebx
push esi
mov eax, ecx
xor esi, esi
mov ecx, dword [ebp + 8]
xorps xmm0, xmm0
push edi
mov edi, edx
mov dword [ebp - 0x22c], eax
mov dword [ebp - 0x230], ecx
mov dword [ebp - 0x210], esi
movlpd qword [ebp - 0x21c], xmm0
mov dword [ebp - 0x228], esi
mov dword [eax], esi
test edi, edi
jne 0x464706
xor eax, eax
jmp 0x464bab
call fcn.00464cbb
mov ebx, eax
test ebx, ebx
jne 0x464719
push 0x1b
pop eax
jmp 0x464bab
push ebx
push str.Content_Type:_multipart_form_data__boundary_s_r_n
lea eax, [ebp - 0x210]
push esi
push eax
call fcn.004645d9
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x464ba1
mov eax, dword [ebp - 0x210]
mov dword [ebp - 0x224], eax
mov eax, dword [ebp - 0x21c]
or eax, dword [ebp - 0x218]
je 0x464778
push 0x50fac4
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x210]
push eax
call fcn.004645d9
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x464b96
push ebx
push str.___s_r_n
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x210]
push eax
call fcn.004645d9
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x464b96
push str.Content_Disposition:_form_data__name_
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x210]
push eax
call fcn.004645d9
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x464b96
lea eax, [ebp - 0x21c]
xor edx, edx
push eax
push dword [edi + 8]
lea ecx, [ebp - 0x210]
push dword [edi + 4]
call fcn.004644f3
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x464b96
push 0x50feb8
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x210]
push eax
call fcn.004645d9
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x464b96
cmp dword [edi + 0x24], eax
je 0x464845
call fcn.00464cbb
push eax
mov dword [ebp - 0x228], eax
lea eax, [ebp - 0x21c]
push str._r_nContent_Type:_multipart_mixed__boundary_s_r_n
push eax
lea eax, [ebp - 0x210]
push eax
call fcn.004645d9
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x464b96
mov ecx, edi
mov dword [ebp - 0x220], edi
cmp dword [edi + 0x24], 0
je 0x46489d
cmp dword [ecx + 0x2c], 0
jne 0x464869
mov ecx, dword [ecx + 0xc]
call fcn.00464657
mov ecx, dword [ebp - 0x220]
jmp 0x46486b
xor eax, eax
cmp dword [ecx + 0x2c], 0
mov dword [ebp - 0x214], eax
cmovne eax, dword [ecx + 0x2c]
push eax
push dword [ebp - 0x228]
lea eax, [ebp - 0x21c]
push str._r_n___s_r_nContent_Disposition:_attachment__filename__s_
push eax
lea eax, [ebp - 0x210]
push eax
call fcn.004645d9
add esp, 0x14
jmp 0x4648df
test byte [edi + 0x28], 0x11
je 0x464901
cmp dword [edi + 0x2c], 0
jne 0x4648b3
mov ecx, dword [edi + 0xc]
call fcn.00464657
jmp 0x4648b5
xor eax, eax
cmp dword [edi + 0x2c], 0
mov dword [ebp - 0x214], eax
cmovne eax, dword [edi + 0x2c]
push eax
push str.__filename__s_
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x210]
push eax
call fcn.004645d9
add esp, 0x10
mov esi, eax
mov eax, dword [ebp - 0x214]
test eax, eax
je 0x4648f3
push eax
call dword [0x556bf0]
pop ecx
test esi, esi
jne 0x464b96
mov ecx, dword [ebp - 0x220]
mov eax, dword [ecx + 0x1c]
test eax, eax
je 0x464934
push eax
push str._r_nContent_Type:__s
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x210]
push eax
call fcn.004645d9
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x464b96
mov ecx, dword [ebp - 0x220]
mov eax, dword [ecx + 0x20]
jmp 0x464969
push dword [eax]
lea eax, [ebp - 0x21c]
push str._r_n_s
push eax
lea eax, [ebp - 0x210]
push eax
call fcn.004645d9
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x464b96
mov eax, dword [ebp - 0x214]
mov eax, dword [eax + 4]
mov dword [ebp - 0x214], eax
test eax, eax
jne 0x464939
test esi, esi
jne 0x464b96
push str._r_n_r_n
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x210]
push eax
call fcn.004645d9
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x464b96
test byte [edi + 0x28], 3
jne 0x4649cb
lea eax, [ebp - 0x21c]
xor edx, edx
test byte [edi + 0x28], 0x10
lea ecx, [ebp - 0x210]
push eax
je 0x4649c3
push dword [edi + 0x18]
push dword [edi + 0x14]
jmp 0x464a3f
push dword [edi + 0x10]
push dword [edi + 0xc]
jmp 0x464a3f
mov eax, dword [ebp - 0x220]
push dword [eax + 0xc]
push 0x510184
call fcn.004ebe81
pop ecx
pop ecx
test eax, eax
jne 0x4649eb
call fcn.004c3470
jmp 0x464a00
mov eax, dword [ebp - 0x220]
push 0x50fac8
push dword [eax + 0xc]
call fcn.004c0ed5
pop ecx
pop ecx
mov dword [ebp - 0x214], eax
test eax, eax
je 0x464b73
call fcn.004c3470
mov ecx, dword [ebp - 0x214]
push ecx
cmp ecx, eax
je 0x464a4b
call fcn.004c0d4e
pop ecx
lea eax, [ebp - 0x21c]
xor edx, edx
push eax
mov eax, dword [ebp - 0x220]
lea ecx, [ebp - 0x210]
push 0
inc edx
push dword [eax + 0xc]
call fcn.004644f3
add esp, 0xc
mov esi, eax
jmp 0x464aae
push 0x200
lea eax, [ebp - 0x20c]
push 1
push eax
call fcn.004c12c3
add esp, 0x10
test eax, eax
je 0x464ab6
lea ecx, [ebp - 0x21c]
xor edx, edx
push ecx
push eax
lea eax, [ebp - 0x20c]
push eax
lea ecx, [ebp - 0x210]
call fcn.004644f3
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x464b96
push dword [ebp - 0x214]
lea eax, [ebp - 0x20c]
push 0x200
push 1
push eax
call fcn.004c12c3
add esp, 0x10
test eax, eax
jne 0x464a65
test esi, esi
jne 0x464b96
mov ecx, dword [ebp - 0x220]
mov ecx, dword [ecx + 0x24]
mov dword [ebp - 0x220], ecx
test ecx, ecx
jne 0x46484d
test esi, esi
jne 0x464b96
cmp dword [edi + 0x24], esi
je 0x464b11
push dword [ebp - 0x228]
lea eax, [ebp - 0x21c]
push str._r_n___s__
push eax
lea eax, [ebp - 0x210]
push eax
call fcn.004645d9
push dword [ebp - 0x228]
mov esi, eax
call dword [0x556bf0]
add esp, 0x14
test esi, esi
jne 0x464b96
mov edi, dword [edi]
test edi, edi
jne 0x464745
test esi, esi
jne 0x464b96
push ebx
push str._r_n___s___r_n
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x210]
push eax
call fcn.004645d9
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x464b96
mov ecx, dword [ebp - 0x230]
mov eax, dword [ebp - 0x21c]
push ebx
mov dword [ecx], eax
mov eax, dword [ebp - 0x218]
mov dword [ecx + 4], eax
call dword [0x556bf0]
mov eax, dword [ebp - 0x22c]
pop ecx
mov ecx, dword [ebp - 0x224]
mov dword [eax], ecx
jmp 0x4646ff
mov ecx, dword [ebp - 0x224]
call fcn.00464632
push ebx
call dword [0x556bf0]
mov eax, dword [ebp - 0x22c]
pop ecx
push 0x1a
and dword [eax], 0
jmp 0x464713
mov ecx, dword [ebp - 0x224]
call fcn.00464632
push ebx
call dword [0x556bf0]
mov eax, esi
pop ecx
mov ecx, dword [ebp - 8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004bc1bd
mov esp, ebp
pop ebp
ret