Function at 0x4d8c70
Capabilities:
Read file on windows

Disassembly:
sub esp, 0x264
mov eax, dword [0x594aa4]
xor eax, esp
mov dword [esp + 0x260], eax
mov eax, dword [esp + 0x26c]
mov ecx, dword [esp + 0x268]
mov edx, dword [esp + 0x274]
push esi
mov esi, dword [esp + 0x274]
push edi
xor edi, edi
mov dword [esp + 0x28], ecx
mov dword [esp + 0x18], eax
mov dword [esp + 0x2c], edx
mov dword [esp + 8], edi
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], edi
mov dword [esp + 0x24], edi
mov dword [ecx], edi
cmp eax, edi
jne 0x4d8cdf
pop edi
xor eax, eax
pop esi
mov ecx, dword [esp + 0x260]
xor ecx, esp
call fcn.0047ff9f
add esp, 0x264
ret
push ebp
call fcn.004d8c00
mov ebp, eax
mov dword [esp + 0x18], ebp
cmp ebp, edi
jne 0x4d8d0c
pop ebp
pop edi
mov eax, 0x1b
pop esi
mov ecx, dword [esp + 0x260]
xor ecx, esp
call fcn.0047ff9f
add esp, 0x264
ret
cmp esi, edi
jne 0x4d8d15
mov esi, str.Content_Type:_multipart_form_data
push ebx
push ebp
push esi
lea eax, [esp + 0x18]
push str._s__boundary_s_r_n
push eax
xor ebx, ebx
call fcn.004d88a0
mov esi, eax
add esp, 0x10
test esi, esi
je 0x4d8d43
push ebp
call dword [0x595e18]
add esp, 4
mov eax, esi
jmp 0x4d936d
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x24], ecx
jmp 0x4d8d50
or edi, dword [esp + 0x18]
je 0x4d8d7a
lea edx, [esp + 0x10]
push 0x54f374
push edx
lea ebx, [esp + 0x1c]
call fcn.004d88a0
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x4d92c7
mov ebp, dword [esp + 0x1c]
push ebp
lea eax, [esp + 0x14]
push str.___s_r_n
push eax
lea ebx, [esp + 0x20]
call fcn.004d88a0
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x4d92c7
lea ecx, [esp + 0x10]
push str.Content_Disposition:_form_data__name_
push ecx
lea ebx, [esp + 0x1c]
call fcn.004d88a0
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x4d92c7
mov ecx, dword [esp + 0x20]
mov ebx, dword [ecx + 4]
lea edx, [esp + 0x14]
push edx
push eax
lea eax, [esp + 0x18]
push eax
mov eax, dword [ecx + 8]
call fcn.004d87a0
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x4d92c7
lea ecx, [esp + 0x10]
push 0x58418c
push ecx
lea ebx, [esp + 0x1c]
call fcn.004d88a0
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x4d92c7
mov edx, dword [esp + 0x20]
cmp dword [edx + 0x24], eax
je 0x4d8e35
call fcn.004d8c00
push eax
mov dword [esp + 0x30], eax
lea eax, [esp + 0x14]
push str._r_nContent_Type:_multipart_mixed__boundary_s_r_n
push eax
lea ebx, [esp + 0x20]
call fcn.004d88a0
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x4d92c7
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x28], ecx
lea ecx, [ecx]
mov edi, dword [esp + 0x20]
cmp dword [edi + 0x24], 0
je 0x4d8f19
mov ebp, dword [esp + 0x28]
xor esi, esi
cmp dword [ebp + 0x2c], esi
jne 0x4d8ec4
mov eax, dword [ebp + 0xc]
push eax
call dword [0x595e20]
mov esi, eax
add esp, 4
test esi, esi
je 0x4d92a8
push 0x2f
push esi
mov ebx, esi
call fcn.00498530
push 0x5c
push esi
mov edi, eax
call fcn.00498530
add esp, 0x10
test edi, edi
je 0x4d8e9c
test eax, eax
je 0x4d8e97
cmp edi, eax
jbe 0x4d8ea0
mov eax, edi
jmp 0x4d8ea0
lea ebx, [edi + 1]
jmp 0x4d8ea3
test eax, eax
je 0x4d8ea3
lea ebx, [eax + 1]
push ebx
call dword [0x595e20]
push esi
mov edi, eax
call dword [0x595e18]
add esp, 8
mov esi, edi
test edi, edi
je 0x4d92a8
mov edi, dword [esp + 0x20]
mov eax, dword [ebp + 0x2c]
test eax, eax
jne 0x4d8ecd
mov eax, esi
mov edx, dword [esp + 0x2c]
push eax
push edx
lea eax, [esp + 0x18]
push str._r_n___s_r_nContent_Disposition:_attachment__filename__s_
push eax
lea ebx, [esp + 0x24]
call fcn.004d88a0
add esp, 0x10
mov ebx, eax
test esi, esi
je 0x4d8ef9
push esi
call dword [0x595e18]
add esp, 4
test ebx, ebx
je 0x4d8f6b
lea ecx, [esp + 0x24]
push ecx
call fcn.004d89b0
mov edx, dword [esp + 0x20]
push edx
call dword [0x595e18]
mov eax, ebx
jmp 0x4d936a
test byte [edi + 0x28], 0x51
je 0x4d8f67
cmp dword [edi + 0x2c], 0
jne 0x4d8f31
mov eax, dword [edi + 0xc]
call fcn.004d89f0
mov esi, eax
jmp 0x4d8f33
xor esi, esi
mov eax, dword [edi + 0x2c]
test eax, eax
jne 0x4d8f3c
mov eax, esi
push eax
lea ecx, [esp + 0x14]
push str.__filename__s_
push ecx
lea ebx, [esp + 0x20]
call fcn.004d88a0
add esp, 0xc
mov ebx, eax
test esi, esi
je 0x4d8f63
push esi
call dword [0x595e18]
add esp, 4
test ebx, ebx
jne 0x4d8efd
mov ebp, dword [esp + 0x28]
mov eax, dword [ebp + 0x1c]
test eax, eax
je 0x4d8f93
push eax
lea edx, [esp + 0x14]
push str._r_nContent_Type:__s
push edx
lea ebx, [esp + 0x20]
call fcn.004d88a0
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x4d8efd
mov esi, dword [ebp + 0x20]
test esi, esi
je 0x4d8fcc
lea ebx, [ebx]
mov eax, dword [esi]
push eax
lea ecx, [esp + 0x14]
push str._r_n_s
push ecx
lea ebx, [esp + 0x20]
call fcn.004d88a0
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x4d92c7
mov esi, dword [esi + 4]
test esi, esi
jne 0x4d8fa0
jmp 0x4d8fd4
test ebx, ebx
jne 0x4d92c7
lea edx, [esp + 0x10]
push str._r_n_r_n
push edx
lea ebx, [esp + 0x1c]
call fcn.004d88a0
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x4d8efd
mov eax, dword [edi + 0x28]
test al, 3
jne 0x4d908a
test al, 0x10
je 0x4d902c
mov ebx, dword [edi + 0x14]
lea eax, [esp + 0x14]
push eax
mov eax, dword [edi + 0x18]
push 1
lea ecx, [esp + 0x18]
push ecx
call fcn.004d87a0
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x4d8efd
jmp 0x4d921a
test al, 0x40
je 0x4d9076
mov eax, dword [esp + 0x20]
mov edi, dword [eax + 0x10]
mov esi, dword [eax + 0x30]
push 0x10
call dword [0x595e14]
xor ebx, ebx
add esp, 4
cmp eax, ebx
je 0x4d9275
mov ecx, dword [esp + 0x10]
mov dword [eax], ebx
mov dword [eax + 8], esi
mov dword [eax + 4], 2
mov dword [esp + 0x10], eax
cmp ecx, ebx
je 0x4d9069
mov dword [ecx], eax
add dword [esp + 0x14], edi
adc dword [esp + 0x18], ebx
jmp 0x4d921a
mov ebx, dword [edi + 0xc]
lea edx, [esp + 0x14]
push edx
lea eax, [esp + 0x14]
push 1
push eax
mov eax, dword [edi + 0x10]
jmp 0x4d9015
mov ecx, dword [ebp + 0xc]
push ecx
push 0x55095c
call fcn.004c1480
add esp, 8
test eax, eax
je 0x4d90a6
call fcn.0048aa3e
jmp 0x4d90bb
mov edx, dword [esp + 0x28]
mov eax, dword [edx + 0xc]
push 0x5579d8
push eax
call fcn.0053818d
add esp, 8
mov ebp, eax
test ebp, ebp
je 0x4d9346
call fcn.0048aa3e
push ebp
cmp ebp, eax
je 0x4d9153
call fcn.0048012f
mov ecx, dword [esp + 0x2c]
mov edi, dword [ecx + 0xc]
push 0x10
call dword [0x595e14]
mov esi, eax
add esp, 8
test esi, esi
je 0x4d9289
mov eax, dword [esp + 0x10]
mov dword [esi], 0
mov dword [esi + 8], edi
mov dword [esi + 4], 3
mov dword [esp + 0x10], esi
test eax, eax
je 0x4d9112
mov dword [eax], esi
mov edx, dword [esi + 8]
push edx
push 0x55095c
call fcn.004c1480
add esp, 8
test eax, eax
jne 0x4d914c
mov ecx, dword [esi + 8]
lea eax, [esp + 0x38]
push eax
push ecx
call fcn.00538b85
add esp, 8
test eax, eax
jne 0x4d914c
mov edx, dword [esp + 0x50]
add dword [esp + 0x14], edx
mov eax, dword [esp + 0x54]
adc dword [esp + 0x18], eax
xor ebx, ebx
jmp 0x4d921a
push 0x200
lea ecx, [esp + 0x78]
push 1
push ecx
call fcn.00485f76
mov edi, eax
add esp, 0x10
test edi, edi
je 0x4d921a
xor ebx, ebx
push 0x10
call dword [0x595e14]
mov esi, eax
add esp, 4
test esi, esi
je 0x4d9289
mov dword [esi], 0
test edi, edi
jne 0x4d91a9
lea edi, [esp + 0x70]
lea ecx, [edi + 1]
lea esp, [esp]
mov al, byte [edi]
inc edi
test al, al
jne 0x4d91a0
sub edi, ecx
lea edx, [edi + 1]
push edx
call dword [0x595e14]
add esp, 4
mov dword [esi + 8], eax
test eax, eax
je 0x4d927f
push edi
lea ecx, [esp + 0x74]
push ecx
push eax
call fcn.00481e40
mov edx, dword [esi + 8]
add esp, 0xc
cmp dword [esp + 0x10], 0
mov dword [esi + 0xc], edi
mov byte [edi + edx], 0
mov dword [esi + 4], 1
je 0x4d91ee
mov eax, dword [esp + 0x10]
mov dword [eax], esi
add dword [esp + 0x14], edi
push ebp
push 0x200
adc dword [esp + 0x20], 0
lea ecx, [esp + 0x78]
push 1
push ecx
mov dword [esp + 0x20], esi
call fcn.00485f76
mov edi, eax
add esp, 0x10
test edi, edi
jne 0x4d9173
mov edx, dword [esp + 0x28]
mov eax, dword [edx + 0x24]
mov dword [esp + 0x28], eax
test eax, eax
jne 0x4d8e40
mov edi, dword [esp + 0x20]
cmp dword [edi + 0x24], eax
je 0x4d925e
mov esi, dword [esp + 0x2c]
push esi
lea eax, [esp + 0x14]
push str._r_n___s__
push eax
lea ebx, [esp + 0x20]
call fcn.004d88a0
push esi
mov ebx, eax
call dword [0x595e18]
add esp, 0x10
test ebx, ebx
jne 0x4d92c7
mov eax, dword [edi]
mov dword [esp + 0x20], eax
test eax, eax
je 0x4d92e3
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
jmp 0x4d8d50
mov ebx, 0x1b
jmp 0x4d8efd
push esi
call dword [0x595e18]
add esp, 4
lea edx, [esp + 0x24]
push edx
call fcn.004d89b0
mov eax, dword [esp + 0x20]
push eax
call dword [0x595e18]
mov eax, 0x1b
jmp 0x4d936a
lea ecx, [esp + 0x24]
push ecx
call fcn.004d89b0
mov edx, dword [esp + 0x20]
push edx
call dword [0x595e18]
mov eax, 0x1b
jmp 0x4d936a
lea eax, [esp + 0x24]
push eax
call fcn.004d89b0
mov ecx, dword [esp + 0x20]
push ecx
call dword [0x595e18]
mov eax, ebx
jmp 0x4d936a
test ebx, ebx
jne 0x4d92c7
mov edi, dword [esp + 0x1c]
push edi
lea edx, [esp + 0x14]
push str._r_n___s___r_n
push edx
lea ebx, [esp + 0x20]
call fcn.004d88a0
mov esi, eax
add esp, 0xc
test esi, esi
je 0x4d931d
lea eax, [esp + 0x24]
push eax
call fcn.004d89b0
push edi
call dword [0x595e18]
mov eax, esi
jmp 0x4d936a
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
push edi
mov dword [eax], ecx
mov dword [eax + 4], edx
call dword [0x595e18]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x34]
mov dword [ecx], eax
add esp, 4
mov eax, esi
jmp 0x4d936d
lea edx, [esp + 0x24]
push edx
call fcn.004d89b0
mov eax, dword [esp + 0x20]
push eax
call dword [0x595e18]
mov ecx, dword [esp + 0x38]
mov dword [ecx], 0
mov eax, 0x1a
add esp, 8
mov ecx, dword [esp + 0x270]
pop ebx
pop ebp
pop edi
pop esi
xor ecx, esp
call fcn.0047ff9f
add esp, 0x264
ret