Function at 0x425240
Capabilities:
Read file on windows

Disassembly:
sub esp, 0x268
mov eax, dword [0x5279f0]
xor eax, esp
mov dword [esp + 0x264], eax
mov eax, dword [esp + 0x26c]
mov ecx, dword [esp + 0x27c]
push ebp
mov ebp, dword [esp + 0x278]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x274]
xorps xmm0, xmm0
push esi
mov esi, dword [esp + 0x280]
mov dword [esp + 0x18], eax
mov dword [esp + 0x28], ecx
mov dword [esp + 8], 0
movlpd qword [esp + 0x10], xmm0
mov dword [esp + 0x1c], 0
mov dword [eax], 0
test ebp, ebp
jne 0x4252c1
pop esi
xor eax, eax
pop ebp
mov ecx, dword [esp + 0x264]
xor ecx, esp
call fcn.004c22ab
add esp, 0x268
ret
push ebx
call fcn.00425050
mov ebx, eax
mov dword [esp + 0x10], ebx
test ebx, ebx
jne 0x4252ec
lea eax, [ebx + 0x1b]
pop ebx
pop esi
pop ebp
mov ecx, dword [esp + 0x264]
xor ecx, esp
call fcn.004c22ab
add esp, 0x268
ret
push ebx
mov eax, str.Content_Type:_multipart_form_data
test esi, esi
cmovne eax, esi
push eax
push str._s__boundary_s_r_n
lea eax, [esp + 0x18]
push 0
push eax
call fcn.00424fe0
mov esi, eax
add esp, 0x14
test esi, esi
je 0x425336
push ebx
call dword [0x51f040]
add esp, 4
mov eax, esi
pop ebx
pop esi
pop ebp
mov ecx, dword [esp + 0x264]
xor ecx, esp
call fcn.004c22ab
add esp, 0x268
ret
mov eax, dword [esp + 0xc]
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
push edi
mov eax, dword [esp + 0x18]
or eax, dword [esp + 0x1c]
je 0x42536e
push 0x4d96d4
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x18]
push eax
call fcn.00424fe0
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x42587b
push ebx
push str.___s_r_n
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x1c]
push eax
call fcn.00424fe0
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x42587b
push str.Content_Disposition:_form_data__name_
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x18]
push eax
call fcn.00424fe0
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x42587b
lea eax, [esp + 0x18]
push eax
push dword [ebp + 8]
lea eax, [esp + 0x18]
push dword [ebp + 4]
push esi
push eax
call fcn.00424e90
mov esi, eax
add esp, 0x14
test esi, esi
jne 0x42587b
push 0x4def88
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x18]
push eax
call fcn.00424fe0
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x42587b
cmp dword [ebp + 0x24], eax
je 0x42543f
mov eax, dword [esp + 0x24]
test eax, eax
je 0x42540c
push eax
call dword [0x51f040]
add esp, 4
call fcn.00425050
mov dword [esp + 0x24], eax
test eax, eax
je 0x42580e
push eax
push str._r_nContent_Type:_multipart_mixed__boundary_s_r_n
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x1c]
push eax
call fcn.00424fe0
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x42587b
mov ebx, ebp
mov dword [esp + 0x28], ebp
cmp dword [ebp + 0x24], 0
je 0x4254e8
xor edi, edi
cmp dword [ebx + 0x2c], edi
jne 0x4254c0
push dword [ebx + 0xc]
call dword [0x51f048]
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x425815
push 0x2f
push ebx
mov esi, ebx
call fcn.004c48f0
push 0x5c
push ebx
mov edi, eax
call fcn.004c48f0
add esp, 0x10
test edi, edi
je 0x42549a
test eax, eax
je 0x425495
cmp edi, eax
mov esi, eax
cmova esi, edi
inc esi
jmp 0x4254a1
lea esi, [edi + 1]
jmp 0x4254a1
test eax, eax
je 0x4254a1
lea esi, [eax + 1]
push esi
call dword [0x51f048]
push ebx
mov edi, eax
call dword [0x51f040]
add esp, 8
test edi, edi
je 0x425815
mov ebx, dword [esp + 0x28]
mov ecx, dword [ebx + 0x2c]
test ecx, ecx
mov eax, edi
cmovne eax, ecx
push eax
push dword [esp + 0x28]
lea eax, [esp + 0x20]
push str._r_n___s_r_nContent_Disposition:_attachment__filename__s_
push eax
lea eax, [esp + 0x20]
push eax
call fcn.00424fe0
add esp, 0x14
jmp 0x425531
mov eax, dword [ebp + 0x28]
test al, 0x51
je 0x425549
mov ecx, dword [ebp + 0x2c]
test ecx, ecx
jne 0x42550d
test al, 1
je 0x425541
test ecx, ecx
jne 0x42550d
push dword [ebp + 0xc]
call fcn.00425950
add esp, 4
mov edi, eax
jmp 0x42550f
xor edi, edi
mov eax, dword [ebp + 0x2c]
test eax, eax
mov ecx, edi
cmovne ecx, eax
push ecx
push str.__filename__s_
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x1c]
push eax
call fcn.00424fe0
add esp, 0x10
mov esi, eax
test edi, edi
je 0x425541
push edi
call dword [0x51f040]
add esp, 4
test esi, esi
jne 0x42581a
mov eax, dword [ebx + 0x1c]
test eax, eax
je 0x425572
push eax
push str._r_nContent_Type:__s
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x1c]
push eax
call fcn.00424fe0
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x42581a
mov edi, dword [ebx + 0x20]
test edi, edi
je 0x4255ac
lea esp, [esp]
push dword [edi]
lea eax, [esp + 0x1c]
push str._r_n_s
push eax
lea eax, [esp + 0x1c]
push eax
call fcn.00424fe0
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x42581a
mov edi, dword [edi + 4]
test edi, edi
jne 0x425580
jmp 0x4255b4
test esi, esi
jne 0x42581a
push str._r_n_r_n
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x18]
push eax
call fcn.00424fe0
mov esi, eax
add esp, 0xc
test esi, esi
jne 0x42581a
mov eax, dword [ebp + 0x28]
test al, 3
jne 0x42566d
test al, 0x10
je 0x4255f1
lea eax, [esp + 0x18]
push eax
push dword [ebp + 0x18]
push dword [ebp + 0x14]
jmp 0x425653
test al, 0x40
je 0x425648
mov edi, dword [ebp + 0x10]
mov esi, dword [ebp + 0x30]
push 0x10
call dword [0x51f03c]
add esp, 4
test eax, eax
jne 0x425616
mov edi, dword [esp + 0x20]
lea esi, [eax + 0x1b]
jmp 0x4257b7
mov ecx, dword [esp + 0x10]
mov dword [eax], 0
mov dword [eax + 8], esi
mov dword [eax + 4], 2
mov dword [esp + 0x10], eax
test ecx, ecx
je 0x425634
mov dword [ecx], eax
add dword [esp + 0x18], edi
mov edi, dword [esp + 0x20]
adc dword [esp + 0x1c], 0
xor esi, esi
jmp 0x4257b7
lea eax, [esp + 0x18]
push eax
push dword [ebp + 0x10]
push dword [ebp + 0xc]
lea eax, [esp + 0x1c]
push 1
push eax
call fcn.00424e90
mov edi, dword [esp + 0x34]
add esp, 0x14
mov esi, eax
jmp 0x4257b7
push dword [ebx + 0xc]
push 0x4d94a0
call fcn.004113d0
add esp, 8
test eax, eax
je 0x425688
call fcn.004c2a68
jmp 0x425698
push 0x4df028
push dword [ebx + 0xc]
call fcn.004c4d0d
add esp, 8
mov edi, eax
test edi, edi
je 0x42578f
call fcn.004c2a68
push edi
cmp edi, eax
je 0x425736
call fcn.004c4a93
mov edi, dword [ebx + 0xc]
push 0x10
call dword [0x51f03c]
mov esi, eax
add esp, 8
test esi, esi
jne 0x4256d5
mov edi, dword [esp + 0x20]
lea esi, [eax + 0x1b]
jmp 0x4257b7
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 0x4256f3
mov dword [eax], esi
push dword [esi + 8]
push 0x4d94a0
call fcn.004113d0
add esp, 8
test eax, eax
jne 0x42572b
lea eax, [esp + 0x3c]
push eax
push dword [esi + 8]
call fcn.004c724f
add esp, 8
test eax, eax
jne 0x42572b
mov eax, dword [esp + 0x54]
add dword [esp + 0x18], eax
mov eax, dword [esp + 0x58]
adc dword [esp + 0x1c], eax
mov edi, dword [esp + 0x20]
xor esi, esi
jmp 0x4257b7
push 0x200
lea eax, [esp + 0x7c]
push 1
push eax
call fcn.004c5bb6
add esp, 0x10
test eax, eax
je 0x425789
mov edi, edi
lea ecx, [esp + 0x18]
push ecx
push eax
lea eax, [esp + 0x7c]
push eax
lea eax, [esp + 0x1c]
push 1
push eax
call fcn.00424e90
mov esi, eax
add esp, 0x14
test esi, esi
jne 0x425789
push edi
push 0x200
lea eax, [esp + 0x7c]
push 1
push eax
call fcn.004c5bb6
add esp, 0x10
test eax, eax
jne 0x425750
mov edi, dword [esp + 0x20]
jmp 0x4257b7
mov edi, dword [esp + 0x2c]
test edi, edi
je 0x4257a8
push dword [ebx + 0xc]
push str.couldnt_open_file___s__n
push edi
call fcn.0040fad0
add esp, 0xc
mov edi, dword [esp + 0x20]
mov esi, 0x1a
mov dword [edi], 0
mov ebx, dword [ebx + 0x24]
mov dword [esp + 0x28], ebx
test ebx, ebx
je 0x4257d3
test esi, esi
je 0x425445
mov ebx, dword [esp + 0x14]
jmp 0x42587b
test esi, esi
jne 0x42581a
mov ebx, dword [esp + 0x24]
cmp dword [ebp + 0x24], esi
je 0x4257fe
push ebx
push str._r_n___s__
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x1c]
push eax
call fcn.00424fe0
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x42581a
mov ebp, dword [ebp]
test ebp, ebp
je 0x425820
mov ebx, dword [esp + 0x14]
jmp 0x425343
mov esi, 0x1b
jmp 0x42587b
mov esi, 0x1b
mov ebx, dword [esp + 0x14]
jmp 0x42587b
test esi, esi
jne 0x42581a
mov ebp, dword [esp + 0x14]
push ebp
push str._r_n___s___r_n
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x1c]
push eax
call fcn.00424fe0
mov esi, eax
add esp, 0x10
test esi, esi
jne 0x425879
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x18]
mov dword [ecx], eax
mov eax, dword [esp + 0x1c]
mov dword [ecx + 4], eax
test ebx, ebx
je 0x425865
push ebx
call dword [0x51f040]
add esp, 4
push ebp
call dword [0x51f040]
mov eax, dword [esp + 0x38]
add esp, 4
mov dword [edi], eax
xor eax, eax
jmp 0x4258a6
mov ebx, ebp
lea eax, [esp + 0x38]
push eax
call fcn.004251d0
mov eax, dword [esp + 0x28]
add esp, 4
test eax, eax
je 0x42589a
push eax
call dword [0x51f040]
add esp, 4
push ebx
call dword [0x51f040]
add esp, 4
mov eax, esi
mov ecx, dword [esp + 0x274]
pop edi
pop ebx
pop esi
pop ebp
xor ecx, esp
call fcn.004c22ab
add esp, 0x268
ret