Function at 0x420310
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 0x4205c5
call fcn.00420240
mov dword [ebp - 0x230], eax
mov edx, dword [ebp - 0x230]
mov eax, 0x1b
test edx, edx
je 0x4205c5
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.0041fe90
test eax, eax
mov esi, eax
jne 0x4205b4
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 0x4203ea
mov eax, 0x508451
lea edx, [ebp - 0x21c]
mov dword [esp + 8], eax
lea eax, [ebp - 0x228]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.0041fe90
test eax, eax
mov esi, eax
jne 0x4205a6
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.0041fe90
test eax, eax
mov esi, eax
jne 0x4205a6
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.0041fe90
test eax, eax
mov esi, eax
jne 0x4205a6
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.0041fd90
test eax, eax
mov esi, eax
jne 0x4205a6
mov eax, 0x508483
lea edx, [ebp - 0x21c]
mov dword [esp + 8], eax
lea eax, [ebp - 0x228]
mov dword [esp + 4], eax
mov dword [esp], edx
call fcn.0041fe90
test eax, eax
mov esi, eax
jne 0x4205a6
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x24]
test eax, eax
jne 0x4207b2
mov edi, dword [ebp + 0xc]
test eax, eax
je 0x4205d0
mov eax, dword [edi + 0x2c]
xor ebx, ebx
test eax, eax
je 0x420813
test eax, eax
jne 0x4204d2
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.0041fe90
test ebx, ebx
mov esi, eax
je 0x420510
mov dword [esp], ebx
call dword [0x4f50ac]
test esi, esi
jne 0x4205a6
mov eax, dword [edi + 0x1c]
test eax, eax
jne 0x420622
mov ebx, dword [edi + 0x20]
test ebx, ebx
je 0x42065c
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.0041fe90
test eax, eax
mov esi, eax
jne 0x4207f7
mov ebx, dword [ebx + 4]
test ebx, ebx
jne 0x420530
jmp 0x420670
test al, 0x10
jne 0x420796
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.0041fd90
test eax, eax
mov esi, eax
je 0x420712
mov ecx, dword [ebp - 0x22c]
mov dword [esp], ecx
call fcn.0041fef0
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 0x4205e2
test al, 0x10
je 0x420518
mov edx, dword [ebp + 0xc]
xor ebx, ebx
mov eax, dword [edx + 0x2c]
test eax, eax
je 0x420840
test eax, eax
jne 0x4205f8
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.0041fe90
jmp 0x420501
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.0041fe90
test eax, eax
mov esi, eax
jne 0x4205a6
mov ebx, dword [edi + 0x20]
test ebx, ebx
jne 0x420530
test esi, esi
jne 0x4207f7
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.0041fe90
test eax, eax
mov esi, eax
jne 0x4205a6
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x28]
test al, 1
jne 0x4206ad
test al, 2
je 0x42056d
mov eax, dword [edi + 0xc]
mov dword [esp], 0x508408
mov dword [esp + 4], eax
call sym.fortis.exe_curl_strequal
test eax, eax
je 0x420825
mov ebx, dword [sym.imp.msvcrt.dll__iob]
test ebx, ebx
je 0x4208f0
cmp dword [sym.imp.msvcrt.dll__iob], ebx
je 0x420728
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.0041fd90
mov esi, eax
test esi, esi
jne 0x42077a
mov edi, dword [edi + 0x24]
test edi, edi
je 0x420855
mov edx, dword [ebp + 0xc]
mov eax, dword [edx + 0x24]
jmp 0x4204b7
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 0x42070e
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.0041fd90
test eax, eax
mov esi, eax
je 0x420728
mov edx, dword [ebp - 0x22c]
mov dword [esp], edx
call fcn.0041fef0
mov ecx, dword [ebp - 0x230]
mov dword [esp], ecx
jmp 0x4205bd
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 0x42058c
call fcn.00420240
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.0041fe90
test eax, eax
mov esi, eax
jne 0x4205a6
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x24]
jmp 0x4204b4
mov eax, dword [ebp - 0x22c]
mov dword [esp], eax
call fcn.0041fef0
mov edx, dword [ebp - 0x230]
mov dword [esp], edx
jmp 0x4205bd
mov eax, dword [edi + 0xc]
call fcn.0041ffe0
mov ebx, eax
mov eax, dword [edi + 0x2c]
jmp 0x4204cc
mov eax, 0x50840a
mov dword [esp + 4], eax
mov eax, dword [edi + 0xc]
mov dword [esp], eax
call sub.msvcrt.dll_fopen
mov ebx, eax
jmp 0x4206ce
mov eax, dword [edx + 0xc]
call fcn.0041ffe0
mov ecx, dword [ebp + 0xc]
mov ebx, eax
mov eax, dword [ecx + 0x2c]
jmp 0x4205f2
test esi, esi
jne 0x4205a6
mov ecx, dword [ebp + 0xc]
mov edi, dword [ecx + 0x24]
test edi, edi
jne 0x420920
mov edx, dword [ebp + 0xc]
mov edx, dword [edx]
test edx, edx
mov dword [ebp + 0xc], edx
jne 0x4203ad
test esi, esi
jne 0x4205a6
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.0041fe90
test eax, eax
mov esi, eax
jne 0x42077a
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 0x4205c5
mov eax, dword [ebp - 0x22c]
mov dword [esp], eax
call fcn.0041fef0
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 0x4205c5
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.0041fe90
mov esi, eax
mov eax, dword [ebp - 0x234]
mov dword [esp], eax
call dword [0x4f50ac]
test esi, esi
je 0x42086b
jmp 0x4205a6