Function at 0x420530
Capabilities:
Read file on windows

Disassembly:
push ebp
xor eax, eax
mov ebp, esp
push edi
xor edi, edi
push esi
xor esi, esi
push ebx
sub esp, 0x24c
mov dword [ebp - 0x21c], eax
mov ecx, dword [ebp + 0xc]
xor ebx, ebx
mov dword [ebp - 0x228], edi
mov eax, dword [ebp + 8]
mov dword [ebp - 0x224], esi
mov dword [ebp - 0x234], ebx
mov dword [eax], 0
xor eax, eax
test ecx, ecx
je 0x4207e5
call fcn.00420460
mov dword [ebp - 0x230], eax
mov edx, dword [ebp - 0x230]
mov eax, 0x1b
test edx, edx
je 0x4207e5
mov edx, dword [ebp - 0x230]
mov eax, str.Content_Type:_multipart_form_data__boundary_s_r_n
lea ecx, [ebp - 0x21c]
mov dword [esp + 8], eax
xor eax, eax
mov dword [esp + 0xc], edx
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.004200b0
test eax, eax
mov esi, eax
jne 0x4207d4
mov edx, dword [ebp - 0x21c]
mov dword [ebp - 0x22c], edx
mov edx, dword [ebp - 0x224]
mov eax, dword [ebp - 0x228]
mov ecx, edx
or ecx, eax
je 0x42060a
mov eax, 0x508491
lea edx, [ebp - 0x21c]
mov dword [esp + 8], eax
lea eax, [ebp - 0x228]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.004200b0
test eax, eax
mov esi, eax
jne 0x4207c6
mov ecx, dword [ebp - 0x230]
mov eax, str.___s_r_n
lea edx, [ebp - 0x21c]
mov dword [esp + 8], eax
lea eax, [ebp - 0x228]
mov dword [esp + 0xc], ecx
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.004200b0
test eax, eax
mov esi, eax
jne 0x4207c6
mov eax, str.Content_Disposition:_form_data__name_
lea ecx, [ebp - 0x228]
mov dword [esp + 8], eax
lea eax, [ebp - 0x21c]
mov dword [esp + 4], ecx
mov dword [esp], eax
call fcn.004200b0
test eax, eax
mov esi, eax
jne 0x4207c6
mov ecx, dword [ebp + 0xc]
lea edx, [ebp - 0x228]
mov dword [esp + 8], edx
xor edx, edx
mov eax, dword [ecx + 8]
mov dword [esp + 4], eax
mov eax, dword [ecx + 4]
mov dword [esp], eax
lea eax, [ebp - 0x21c]
call fcn.0041ffb0
test eax, eax
mov esi, eax
jne 0x4207c6
mov eax, 0x5084c3
lea edx, [ebp - 0x21c]
mov dword [esp + 8], eax
lea eax, [ebp - 0x228]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.004200b0
test eax, eax
mov esi, eax
jne 0x4207c6
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x24]
test eax, eax
jne 0x4209d2
mov edi, dword [ebp + 0xc]
test eax, eax
je 0x4207f0
mov eax, dword [edi + 0x2c]
xor ebx, ebx
test eax, eax
je 0x420a33
test eax, eax
jne 0x4206f2
mov eax, ebx
mov dword [esp + 0x10], eax
mov ecx, dword [ebp - 0x234]
mov esi, str._r_n___s_r_nContent_Disposition:_attachment__filename__s_
mov dword [esp + 8], esi
lea eax, [ebp - 0x228]
lea edx, [ebp - 0x21c]
mov dword [esp + 0xc], ecx
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.004200b0
test ebx, ebx
mov esi, eax
je 0x420730
mov dword [esp], ebx
call dword [0x4f50ac]
test esi, esi
jne 0x4207c6
mov eax, dword [edi + 0x1c]
test eax, eax
jne 0x420842
mov ebx, dword [edi + 0x20]
test ebx, ebx
je 0x42087c
mov esi, esi
mov eax, dword [ebx]
lea edx, [ebp - 0x228]
lea ecx, [ebp - 0x21c]
mov dword [esp + 4], edx
mov dword [esp + 0xc], eax
mov eax, str._r_n_s
mov dword [esp + 8], eax
mov dword [esp], ecx
call fcn.004200b0
test eax, eax
mov esi, eax
jne 0x420a17
mov ebx, dword [ebx + 4]
test ebx, ebx
jne 0x420750
jmp 0x420890
test al, 0x10
jne 0x4209b6
mov edx, dword [ebp + 0xc]
lea ecx, [ebp - 0x228]
mov dword [esp + 8], ecx
mov eax, dword [edx + 0x10]
mov dword [esp + 4], eax
mov eax, dword [edx + 0xc]
mov dword [esp], eax
xor edx, edx
lea eax, [ebp - 0x21c]
call fcn.0041ffb0
test eax, eax
mov esi, eax
je 0x420932
mov ecx, dword [ebp - 0x22c]
mov dword [esp], ecx
call fcn.00420110
mov eax, dword [ebp - 0x230]
mov dword [esp], eax
call dword [0x4f50ac]
mov eax, esi
add esp, 0x24c
pop ebx
pop esi
pop edi
pop ebp
ret
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x28]
test al, 1
jne 0x420802
test al, 0x10
je 0x420738
mov edx, dword [ebp + 0xc]
xor ebx, ebx
mov eax, dword [edx + 0x2c]
test eax, eax
je 0x420a60
test eax, eax
jne 0x420818
mov eax, ebx
mov dword [esp + 0xc], eax
mov ecx, str.__filename__s_
lea eax, [ebp - 0x228]
mov dword [esp + 8], ecx
lea edx, [ebp - 0x21c]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.004200b0
jmp 0x420721
mov dword [esp + 0xc], eax
mov edx, str._r_nContent_Type:__s
lea ecx, [ebp - 0x228]
mov dword [esp + 8], edx
lea eax, [ebp - 0x21c]
mov dword [esp + 4], ecx
mov dword [esp], eax
call fcn.004200b0
test eax, eax
mov esi, eax
jne 0x4207c6
mov ebx, dword [edi + 0x20]
test ebx, ebx
jne 0x420750
test esi, esi
jne 0x420a17
lea esi, [esi]
lea edi, [edi]
mov eax, str._r_n_r_n
lea edx, [ebp - 0x21c]
mov dword [esp + 8], eax
lea eax, [ebp - 0x228]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.004200b0
test eax, eax
mov esi, eax
jne 0x4207c6
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x28]
test al, 1
jne 0x4208cd
test al, 2
je 0x42078d
mov eax, dword [edi + 0xc]
mov dword [esp], 0x508448
mov dword [esp + 4], eax
call sym.fortis.exe_curl_strequal
test eax, eax
je 0x420a45
mov ebx, dword [sym.imp.msvcrt.dll__iob]
test ebx, ebx
je 0x420b10
cmp dword [sym.imp.msvcrt.dll__iob], ebx
je 0x420948
mov dword [esp], ebx
call sub.msvcrt.dll_fclose
lea eax, [ebp - 0x228]
mov edx, 1
mov dword [esp + 8], eax
xor eax, eax
mov dword [esp + 4], eax
mov eax, dword [edi + 0xc]
mov dword [esp], eax
lea eax, [ebp - 0x21c]
call fcn.0041ffb0
mov esi, eax
test esi, esi
jne 0x42099a
mov edi, dword [edi + 0x24]
test edi, edi
je 0x420a75
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x24]
jmp 0x4206d7
mov dword [esp + 0xc], ebx
mov eax, 0x200
mov dword [esp + 8], eax
mov eax, 1
mov dword [esp + 4], eax
lea eax, [ebp - 0x218]
mov dword [esp], eax
call sub.msvcrt.dll_fread
test eax, eax
je 0x42092e
mov dword [esp + 4], eax
lea edx, [ebp - 0x228]
lea ecx, [ebp - 0x218]
mov dword [esp + 8], edx
lea eax, [ebp - 0x21c]
xor edx, edx
mov dword [esp], ecx
call fcn.0041ffb0
test eax, eax
mov esi, eax
je 0x420948
mov edx, dword [ebp - 0x22c]
mov dword [esp], edx
call fcn.00420110
mov ecx, dword [ebp - 0x230]
mov dword [esp], ecx
jmp 0x4207dd
mov edx, dword [ebp + 0xc]
lea eax, [ebp - 0x228]
mov dword [esp + 8], eax
mov eax, dword [edx + 0x18]
mov dword [esp + 4], eax
mov eax, dword [edx + 0x14]
jmp 0x4207ac
call fcn.00420460
mov dword [ebp - 0x234], eax
lea edx, [ebp - 0x21c]
mov edi, str._r_nContent_Type:_multipart_mixed__boundary_s_r_n
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x228]
mov dword [esp + 8], edi
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.004200b0
test eax, eax
mov esi, eax
jne 0x4207c6
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x24]
jmp 0x4206d4
mov eax, dword [ebp - 0x22c]
mov dword [esp], eax
call fcn.00420110
mov edx, dword [ebp - 0x230]
mov dword [esp], edx
jmp 0x4207dd
mov eax, dword [edi + 0xc]
call fcn.00420200
mov ebx, eax
mov eax, dword [edi + 0x2c]
jmp 0x4206ec
mov eax, 0x50844a
mov dword [esp + 4], eax
mov eax, dword [edi + 0xc]
mov dword [esp], eax
call sub.msvcrt.dll_fopen
mov ebx, eax
jmp 0x4208ee
mov eax, dword [edx + 0xc]
call fcn.00420200
mov ecx, dword [ebp + 0xc]
mov ebx, eax
mov eax, dword [ecx + 0x2c]
jmp 0x420812
test esi, esi
jne 0x4207c6
mov ecx, dword [ebp + 0xc]
mov edi, dword [ecx + 0x24]
test edi, edi
jne 0x420b40
mov edx, dword [ebp + 0xc]
mov edx, dword [edx]
test edx, edx
mov dword [ebp + 0xc], edx
jne 0x4205cd
test esi, esi
jne 0x4207c6
mov edx, dword [ebp - 0x230]
mov ecx, str._r_n___s___r_n
lea eax, [ebp - 0x21c]
mov dword [esp + 8], ecx
lea ecx, [ebp - 0x228]
mov dword [esp + 0xc], edx
mov dword [esp + 4], ecx
mov dword [esp], eax
call fcn.004200b0
test eax, eax
mov esi, eax
jne 0x42099a
mov edx, dword [ebp - 0x228]
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp - 0x224]
mov dword [eax], edx
mov edx, dword [ebp - 0x230]
mov dword [eax + 4], ecx
mov dword [esp], edx
call dword [0x4f50ac]
mov eax, dword [ebp - 0x22c]
mov ecx, dword [ebp + 8]
mov dword [ecx], eax
xor eax, eax
jmp 0x4207e5
mov eax, dword [ebp - 0x22c]
mov dword [esp], eax
call fcn.00420110
mov edx, dword [ebp - 0x230]
mov dword [esp], edx
call dword [0x4f50ac]
mov ecx, dword [ebp + 8]
mov eax, 0x1a
mov dword [ecx], 0
jmp 0x4207e5
mov eax, dword [ebp - 0x234]
lea edx, [ebp - 0x228]
mov ebx, str._r_n___s__
mov dword [esp + 4], edx
lea ecx, [ebp - 0x21c]
mov dword [esp], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 8], ebx
call fcn.004200b0
mov esi, eax
mov eax, dword [ebp - 0x234]
mov dword [esp], eax
call dword [0x4f50ac]
test esi, esi
je 0x420a8b
jmp 0x4207c6