Function at 0x5e2470
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x645a60
mov eax, dword fs:[0]
push eax
sub esp, 0x5c
push ebx
push esi
push edi
mov eax, dword [0x6a6040]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
xor ecx, ecx
push 4
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x18], ecx
lea ecx, [ebx + 0x6a]
push str._r_n_r_n
call fcn.0041ab50
mov edi, dword [ebp + 8]
test al, al
jne 0x5e295c
mov edi, dword [ebp + 0x10]
lea esi, [ebx + 0x26]
cmp dword [ebx + 0x18], 0
je 0x5e2503
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
call fcn.00444780
lea eax, [ebp + 0x10]
mov dword [ebp - 4], 0
push eax
mov ecx, esi
call fcn.004269f0
lea ecx, [ebp + 0x10]
call fcn.005a5c10
lea ecx, [ebp + 0x10]
mov dword [ebx + 0x18], 0
mov dword [ebp - 4], 0xffffffff
call fcn.004250c0
push edi
push dword [ebp + 0xc]
mov ecx, esi
call fcn.00426900
lea eax, [ebp - 0x10]
mov dword [ebp - 0x1c], 0
push eax
mov ecx, esi
call fcn.00444780
push 0xffffffffffffffff
push 4
push str._r_n_r_n
push 0
lea ecx, [ebp - 0x10]
mov dword [ebp - 4], 2
call fcn.005afe70
mov edi, eax
test edi, edi
jle 0x5e2938
lea esi, [edi + 4]
push esi
lea eax, [ebp - 0x24]
push eax
lea ecx, [ebp - 0x10]
call fcn.005ac5a0
push eax
lea ecx, [ebx + 0x6a]
call fcn.005a5c80
lea ecx, [ebp - 0x24]
call fcn.004250c0
push 0xffffffffffffffff
push esi
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x10]
call fcn.005ac890
push eax
mov ecx, ebx
mov byte [ebp - 4], 3
call fcn.004269f0
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 2
call fcn.004250c0
push 0
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebx + 0x6a]
call fcn.005aeea0
lea esi, [ebx + 0x6e]
push eax
mov ecx, esi
call fcn.005a5c80
lea ecx, [ebp - 0x2c]
call fcn.004250c0
cmp dword [ebx + 0x76], 0x15
mov dword [ebx + 0x72], 0xffffffff
je 0x5e28dc
push 5
push str.http_
mov ecx, esi
call fcn.0041ac00
test al, al
je 0x5e2656
mov edx, 5
mov byte [ebp - 0x40], 0
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x18], edx
mov dword [ebp - 0x48], esi
mov dword [ebp - 0x44], edx
call fcn.0041b200
cmp byte [eax], 0x30
jl 0x5e260a
lea ecx, [ebp - 0x51]
mov dword [ebp - 0x51], esi
mov dword [ebp - 0x4d], edx
mov byte [ebp - 0x49], 0
call fcn.0041b200
cmp byte [eax], 0x39
jle 0x5e2621
lea ecx, [ebp - 0x5a]
mov dword [ebp - 0x5a], esi
mov dword [ebp - 0x56], edx
mov byte [ebp - 0x52], 0
call fcn.0041b200
cmp byte [eax], 0x2e
jne 0x5e2624
inc edx
jmp 0x5e25dd
lea eax, [ebx + 0x6e]
mov dword [ebp - 0x5f], edx
mov dword [ebp - 0x63], eax
lea ecx, [ebp - 0x63]
lea eax, [ebp - 0x18]
mov byte [ebp - 0x5b], 0
push eax
push 0x654184
call fcn.0041b200
push eax
call fcn.0041abe0
add esp, 0xc
cmp eax, 1
jne 0x5e2656
mov eax, dword [ebp - 0x18]
mov dword [ebx + 0x72], eax
mov eax, dword [ebx + 0x72]
cmp eax, 0xffffffff
je 0x5e31ab
mov ecx, dword [ebx + 0x6a]
test ecx, ecx
je 0x5e2675
mov edx, dword [ebp + 0x1c]
cmp dword [ecx + 4], edx
ja 0x5e318b
cmp eax, 0x64
jne 0x5e2731
cmp dword [ebx + 0x76], 0x13
je 0x5e26f9
lea esi, [ebx + 0x26]
mov byte [ebp - 4], 2
lea ecx, [ebx + 0x6a]
mov dword [esi + 0x18], 0
call fcn.005a5c10
lea ecx, [ebx + 0x6e]
call fcn.005a5c10
lea eax, [ebp - 0x20]
mov ecx, ebx
push eax
call fcn.00444860
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 5
push eax
mov ecx, esi
call fcn.004269f0
lea ecx, [ebp - 0x20]
call fcn.004250c0
lea ecx, [ebp - 0x10]
mov dword [ebx + 0x18], 0
mov dword [ebp - 4], 0xffffffff
call fcn.004250c0
push 4
push str._r_n_r_n
lea ecx, [ebx + 0x6a]
call fcn.0041ab50
test al, al
jne 0x5e2961
mov edi, dword [ebp - 0x1c]
jmp 0x5e24c2
push 1
push dword [ebp + 0x24]
push dword [ebp + 0x20]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 8]
mov ecx, ebx
call fcn.005e35d0
mov esi, eax
lea ecx, [ebp - 0x10]
call fcn.004250c0
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20
mov edi, dword [ebp + 8]
mov ecx, edi
push 0
push 0x657edc
call fcn.00409a00
test al, al
jne 0x5e28c8
mov eax, dword [ebx + 0x72]
cmp eax, 0x130
je 0x5e2865
cmp eax, 0xcc
je 0x5e2865
cmp eax, 0x65
jne 0x5e285f
push 0
push ecx
mov ecx, esp
push str.content_length:
call fcn.005a5400
push ecx
lea eax, [ebx + 0x6e]
mov ecx, esp
push eax
call fcn.005a5bd0
push ecx
lea eax, [ebx + 0x6a]
mov ecx, esp
push eax
call fcn.005a5bd0
xor edx, edx
lea ecx, [ebp - 0x20]
call fcn.005e31d0
mov esi, eax
add esp, 0xc
mov byte [ebp - 4], 7
mov ecx, esp
mov dword [ebp - 0x18], 1
push 0x6aef98
call fcn.005a5bd0
push 1
push ecx
lea eax, [ebp - 0x24]
mov ecx, esi
push eax
call fcn.005b30e0
mov ecx, 3
mov dword [ebp - 4], 8
mov dword [ebp - 0x14], ecx
mov dword [ebp - 0x18], ecx
mov ecx, eax
push 0x651eaf
call fcn.005a5cd0
test al, al
je 0x5e285f
push 0
push ecx
mov ecx, esp
push str.transfer_encoding:
call fcn.005a5400
push ecx
lea eax, [ebx + 0x6e]
mov ecx, esp
push eax
call fcn.005a5bd0
push ecx
lea eax, [ebx + 0x6a]
mov ecx, esp
push eax
call fcn.005a5bd0
xor edx, edx
lea ecx, [ebp - 0x28]
call fcn.005e31d0
mov esi, eax
add esp, 0xc
mov dword [ebp - 4], 9
mov ecx, esp
mov dword [ebp - 0x18], 7
push 0x6aef98
call fcn.005a5bd0
push 1
push ecx
lea eax, [ebp - 0x2c]
mov ecx, esi
push eax
call fcn.005b30e0
mov ecx, 0xf
mov dword [ebp - 0x14], ecx
mov ecx, eax
push 0x651eaf
call fcn.005a5cd0
test al, al
jne 0x5e2865
mov byte [ebp + 0x13], 0
jmp 0x5e2869
mov byte [ebp + 0x13], 1
mov eax, dword [ebp - 0x14]
test al, 8
je 0x5e2881
and eax, 0xfffffff7
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x14], eax
call fcn.004250c0
mov eax, dword [ebp - 0x14]
test al, 4
je 0x5e2896
and eax, 0xfffffffb
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x14], eax
call fcn.004250c0
mov eax, dword [ebp - 0x14]
test al, 2
je 0x5e28ab
and eax, 0xfffffffd
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x14], eax
call fcn.004250c0
mov eax, dword [ebp - 0x14]
mov dword [ebp - 4], 2
test al, 1
je 0x5e28be
lea ecx, [ebp - 0x20]
call fcn.004250c0
cmp byte [ebp + 0x13], 0
je 0x5e294b
push 1
push dword [ebp + 0x24]
push dword [ebp + 0x20]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push edi
jmp 0x5e270a
push edi
push 0x20
push 0
lea ecx, [ebp - 0x10]
mov dword [ebx + 0x72], 0
call fcn.005b0300
test eax, eax
jle 0x5e292e
push eax
lea eax, [ebp + 0x10]
push eax
lea ecx, [ebp - 0x10]
call fcn.005ac5a0
push eax
lea ecx, [ebx + 0x22]
call fcn.005a5c80
mov edi, dword [ebp + 8]
mov ecx, edi
push eax
call fcn.005a5c40
lea ecx, [ebp + 0x10]
call fcn.004250c0
lea ecx, [ebp - 0x10]
mov dword [ebp - 4], 0xffffffff
call fcn.004250c0
jmp 0x5e2964
push str.Header_error_in_request
jmp 0x5e31b0
jns 0x5e2948
mov eax, dword [ebp + 0x1c]
cmp dword [ebx + 0x3e], eax
jbe 0x5e2948
push eax
jmp 0x5e318c
mov edi, dword [ebp + 8]
lea ecx, [ebp - 0x10]
mov dword [ebp - 4], 0xffffffff
call fcn.004250c0
jmp 0x5e2964
mov esi, dword [ebp + 0x10]
jmp 0x5e2967
mov edi, dword [ebp + 8]
mov esi, dword [ebp - 0x1c]
push 4
lea ecx, [ebx + 0x6a]
push str._r_n_r_n
call fcn.0041ab50
test al, al
je 0x5e2feb
push esi
push dword [ebp + 0xc]
mov ecx, ebx
call fcn.00426900
push 0
push ecx
mov ecx, esp
push str.transfer_encoding:
call fcn.005a5400
push ecx
lea esi, [ebx + 0x6e]
mov ecx, esp
push esi
call fcn.005a5bd0
push ecx
lea eax, [ebx + 0x6a]
mov ecx, esp
push eax
call fcn.005a5bd0
xor edx, edx
lea ecx, [ebp - 0x14]
call fcn.005e31d0
add esp, 0x10
push 0
push ecx
mov ecx, esp
mov dword [ebp - 4], 0xa
push str.content_length:
call fcn.005a5400
push ecx
mov ecx, esp
push esi
call fcn.005a5bd0
push ecx
lea eax, [ebx + 0x6a]
mov ecx, esp
push eax
call fcn.005a5bd0
xor edx, edx
lea ecx, [ebp + 0xc]
call fcn.005e31d0
add esp, 0x10
mov byte [ebp - 4], 0xb
cmp dword [ebx + 0x76], 0x15
je 0x5e301e
push 0
push str.chunked
lea ecx, [ebp - 0x14]
call fcn.00409a00
test al, al
je 0x5e301e
lea eax, [ebp + 0x10]
mov byte [ebp - 0x5b], 0
mov dword [ebp - 0x63], eax
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
call fcn.00444780
xor edi, edi
mov byte [ebp - 4], 0xc
xor edx, edx
nop word [eax + eax]
lea ecx, [ebp - 0x63]
mov dword [ebp - 0x5f], edx
call fcn.0041b200
mov cl, byte [eax]
mov al, cl
sub al, 0x30
cmp al, 9
ja 0x5e2a5d
movsx eax, cl
sub eax, 0x30
jmp 0x5e2a7b
mov al, cl
sub al, 0x61
cmp al, 5
ja 0x5e2a6d
movsx eax, cl
sub eax, 0x57
jmp 0x5e2a7b
mov al, cl
sub al, 0x41
cmp al, 5
ja 0x5e2a8d
movsx eax, cl
sub eax, 0x37
test eax, eax
js 0x5e2a8d
shl edi, 4
add edi, eax
js 0x5e2c25
inc edx
jmp 0x5e2a40
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x5e2a99
mov eax, dword [eax + 4]
jmp 0x5e2a9b
xor eax, eax
cmp edx, eax
jge 0x5e2fd3
cmp cl, 0x3b
je 0x5e2ab6
cmp cl, 0xd
je 0x5e2ab6
cmp cl, 0x20
jne 0x5e2c37
test edx, edx
je 0x5e300c
test edi, edi
jne 0x5e2ae4
lea eax, [ebp + 0x10]
mov dword [ebp - 0x56], 1
lea ecx, [ebp - 0x5a]
mov dword [ebp - 0x5a], eax
mov byte [ebp - 0x52], 0
call fcn.0041b200
cmp byte [eax], 0xd
jne 0x5e2c49
lea eax, [ebp - 0x18]
lea ecx, [ebx + 0x48]
push eax
call fcn.00444780
mov byte [ebp - 4], 0xd
mov esi, dword [ebp - 0x18]
test esi, esi
je 0x5e2b00
mov eax, dword [esi + 4]
jmp 0x5e2b02
xor eax, eax
mov ecx, dword [ebp + 0x1c]
add eax, edi
cmp eax, ecx
jge 0x5e3001
push 0x6aeff0
lea ecx, [ebp + 0x10]
call fcn.005b03d0
mov edx, eax
mov dword [ebp - 0x10], edx
test edx, edx
js 0x5e2fac
mov ecx, dword [ebp + 0x10]
test ecx, ecx
je 0x5e2b35
mov eax, dword [ecx + 4]
jmp 0x5e2b37
xor eax, eax
lea ecx, [edi + 4]
add ecx, edx
cmp ecx, eax
jg 0x5e2fcb
test edi, edi
je 0x5e2c5b
lea eax, [ebp + 0x10]
mov byte [ebp - 0x49], 0
mov dword [ebp - 0x51], eax
lea ecx, [ebp - 0x51]
lea eax, [edi + 2]
add eax, edx
mov dword [ebp - 0x4d], eax
call fcn.0041b200
cmp byte [eax], 0xd
jne 0x5e2c49
lea eax, [ebp + 0x10]
mov byte [ebp - 0x40], 0
mov dword [ebp - 0x48], eax
lea ecx, [ebp - 0x48]
lea eax, [edi + 3]
add eax, edx
mov dword [ebp - 0x44], eax
call fcn.0041b200
cmp byte [eax], 0xa
jne 0x5e2c49
push edi
lea eax, [edx + 2]
push eax
lea eax, [ebp + 0x10]
push eax
lea ecx, [ebp - 0x2c]
call fcn.005a58e0
push eax
lea ecx, [ebx + 0x48]
mov byte [ebp - 4], 0x15
call fcn.004269f0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0xd
call fcn.004250c0
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x5e2bc8
mov eax, dword [eax + 4]
jmp 0x5e2bca
xor eax, eax
mov ecx, dword [ebp - 0x10]
sub eax, ecx
sub eax, edi
sub eax, 4
push eax
lea eax, [ecx + 4]
add eax, edi
lea ecx, [ebp - 0x28]
push eax
lea eax, [ebp + 0x10]
push eax
call fcn.005a58e0
push eax
lea ecx, [ebp + 0x10]
call fcn.005a5c80
lea ecx, [ebp - 0x28]
call fcn.004250c0
push 1
mov ecx, ebx
call fcn.0050daa0
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
call fcn.004269f0
lea ecx, [ebp - 0x18]
call fcn.004250c0
lea ecx, [ebp + 0x10]
mov byte [ebp - 4], 0xb
call fcn.004250c0
jmp 0x5e2a24
push str.Chunk_error_1
lea ecx, [ebp + 8]
call fcn.005a5400
jmp 0x5e319d
push str.Chunk_error_2
lea ecx, [ebp + 8]
call fcn.005a5400
jmp 0x5e319d
push str.Chunk_error_4
lea ecx, [ebp + 8]
call fcn.005a5400
jmp 0x5e319d
push 4
push edx
push str._r_n_r_n
lea ecx, [ebp + 0x10]
call fcn.00444600
test al, al
je 0x5e2c79
mov ecx, dword [ebp - 0x10]
mov eax, ecx
mov dword [ebp - 0x20], ecx
jmp 0x5e2c94
mov eax, dword [ebp - 0x10]
lea ecx, [ebp + 0x10]
push 0xffffffffffffffff
push 4
push str._r_n_r_n
add eax, 2
push eax
call fcn.005afe70
mov dword [ebp - 0x20], eax
test eax, eax
jle 0x5e2fcb
mov eax, dword [ebx + 0x6a]
lea ecx, [ebx + 0x6a]
test eax, eax
je 0x5e2cab
mov eax, dword [eax + 4]
jmp 0x5e2cad
xor eax, eax
add eax, 0xfffffffe
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.005ac5a0
mov edi, eax
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x20]
sub ecx, eax
push ecx
lea ecx, [eax + 2]
push ecx
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp + 0x10]
call fcn.005ac890
push eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0xf
push eax
mov ecx, edi
call fcn.005a6c40
push eax
lea ecx, [ebx + 0x6a]
call fcn.005a5c80
lea ecx, [ebp - 0x2c]
call fcn.004250c0
lea ecx, [ebp - 0x28]
call fcn.004250c0
lea ecx, [ebp - 0x24]
call fcn.004250c0
mov dword [ebp + 0x1c], 0
mov byte [ebp - 4], 0x10
test esi, esi
je 0x5e2d1a
mov eax, dword [esi + 4]
jmp 0x5e2d1c
xor eax, eax
cdq
push edx
push eax
lea eax, [ebp + 0x1c]
push str.Content_Length:__D_r_n_r_n
push eax
call fcn.005abfb0
add esp, 0x10
cmp dword [ebx + 0x6a], 0
jne 0x5e2d8c
mov ecx, dword [ebp + 0x1c]
test ecx, ecx
je 0x5e2e0a
movzx eax, word [ecx + 0x10]
test al, 4
je 0x5e2d50
mov eax, dword [ecx + 0x14]
movzx eax, word [eax + 0x10]
and al, 0x88
cmp al, 0x80
jne 0x5e2d7b
call fcn.0041aff0
push eax
push dword [ecx + 4]
push dword [ecx + 0xc]
lea ecx, [ebp - 0x2c]
call fcn.005a5770
push eax
lea ecx, [ebx + 0x6a]
call fcn.005a5c80
lea ecx, [ebp - 0x2c]
jmp 0x5e2e05
lea eax, [ebp + 0x1c]
push eax
lea ecx, [ebx + 0x6a]
call fcn.005a5c40
jmp 0x5e2e0a
mov edx, dword [ebp + 0x1c]
test edx, edx
je 0x5e2e0a
mov ecx, edx
call fcn.0041aff0
mov ecx, dword [ebx + 0x6a]
mov esi, eax
and esi, 0x400
call fcn.0041aff0
mov ecx, dword [edx + 4]
or esi, eax
mov eax, dword [ebx + 0x6a]
push esi
add ecx, dword [eax + 4]
push ecx
push ecx
lea ecx, [ebp - 0x1c]
call fcn.005a67d0
mov esi, dword [ebp - 0x1c]
test esi, esi
je 0x5e2e02
mov eax, dword [ebx + 0x6a]
push dword [eax + 4]
push dword [eax + 0xc]
push dword [esi + 0xc]
call fcn.00609db0
mov eax, dword [ebp + 0x1c]
add esp, 0xc
push dword [eax + 4]
push dword [eax + 0xc]
mov eax, dword [ebx + 0x6a]
mov eax, dword [eax + 4]
add eax, dword [esi + 0xc]
push eax
call fcn.00609db0
add esp, 0xc
lea eax, [ebp - 0x1c]
lea ecx, [ebx + 0x6a]
push eax
call fcn.005a5c40
lea ecx, [ebp - 0x1c]
call fcn.004250c0
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x5e2e16
mov eax, dword [eax + 4]
jmp 0x5e2e18
xor eax, eax
mov ecx, dword [ebp - 0x20]
sub eax, ecx
sub eax, 4
push eax
lea eax, [ecx + 4]
push eax
lea eax, [ebp + 0x10]
push eax
lea ecx, [ebp - 0x24]
call fcn.005a58e0
push 1
mov ecx, ebx
mov byte [ebp - 4], 0x11
call fcn.0050daa0
lea eax, [ebp - 0x24]
mov ecx, ebx
push eax
call fcn.004269f0
push 0
lea eax, [ebp - 0x2c]
lea ecx, [ebx + 0x6a]
push eax
call fcn.005aeea0
push eax
lea ecx, [ebx + 0x6e]
call fcn.005a5c80
lea ecx, [ebp - 0x2c]
call fcn.004250c0
lea edi, [ebx + 0x6a]
lea esi, [ebx + 0x6e]
nop
lea eax, [ebp - 0x20]
mov dword [ebp - 0x1c], 0
push eax
push ecx
mov ecx, esp
mov dword [ebp - 0x20], 0
push str.transfer_encoding:
call fcn.005a5400
push ecx
mov ecx, esp
push esi
call fcn.005a5bd0
push ecx
mov ecx, esp
push edi
call fcn.005a5bd0
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x10]
call fcn.005e31d0
add esp, 0x10
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x20], eax
jle 0x5e2f46
push eax
lea eax, [ebp - 0x30]
mov ecx, edi
push eax
call fcn.005ac5a0
mov esi, eax
mov ecx, dword [ebp - 0x20]
lea eax, [ebp - 0x28]
push 0xffffffffffffffff
add ecx, 2
push ecx
push eax
mov ecx, edi
call fcn.005ac890
push eax
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x14
push eax
mov ecx, esi
call fcn.005a6c40
push eax
mov ecx, edi
call fcn.005a5c80
lea ecx, [ebp - 0x2c]
call fcn.004250c0
lea ecx, [ebp - 0x28]
call fcn.004250c0
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x12
call fcn.004250c0
push 0
lea eax, [ebp - 0x34]
mov ecx, edi
push eax
call fcn.005aeea0
lea esi, [ebx + 0x6e]
push eax
mov ecx, esi
call fcn.005a5c80
lea ecx, [ebp - 0x34]
call fcn.004250c0
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x11
call fcn.004250c0
jmp 0x5e2e70
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x11
call fcn.004250c0
mov eax, dword [ebp + 8]
mov ecx, ebx
push 1
push dword [ebp + 0x24]
push dword [ebp + 0x20]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push eax
call fcn.005e35d0
lea ecx, [ebp - 0x24]
mov esi, eax
call fcn.004250c0
mov ecx, dword [ebp + 0x1c]
test ecx, ecx
je 0x5e2f8c
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
jne 0x5e2f8c
push ecx
call fcn.005a47b0
lea ecx, [ebp - 0x18]
call fcn.004250c0
lea ecx, [ebp + 0x10]
call fcn.004250c0
lea ecx, [ebp + 0xc]
call fcn.004250c0
lea ecx, [ebp - 0x14]
jmp 0x5e2716
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x5e2fcb
cmp dword [eax + 4], 0x1000
jle 0x5e2fcb
push 0x1000
push str.Too_long_chunk_ext_name_s_____d_
jmp 0x5e3191
lea ecx, [ebp - 0x18]
call fcn.004250c0
lea ecx, [ebp + 0x10]
call fcn.004250c0
lea ecx, [ebp + 0xc]
call fcn.004250c0
lea ecx, [ebp - 0x14]
call fcn.004250c0
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20
push ecx
push str.Too_long_chunked_data____d__n
jmp 0x5e3191
push str.Chunk_error_3
lea ecx, [ebp + 8]
call fcn.005a5400
jmp 0x5e319d
mov eax, dword [ebp + 0xc]
test eax, eax
je 0x5e3120
mov ecx, dword [eax + 0xc]
lea edx, [ebp - 0x48]
push 0
push 0
push dword [eax + 4]
xorps xmm0, xmm0
movlpd qword [ebp - 0x48], xmm0
call fcn.005a4920
add esp, 0xc
lea eax, [ebp + 0x10]
mov ecx, ebx
push eax
call fcn.00444780
lea ecx, [ebx + 0x48]
mov byte [ebp - 4], 0x16
push eax
call fcn.004269f0
lea ecx, [ebp + 0x10]
call fcn.004250c0
mov byte [ebp - 4], 0xb
lea edi, [ebx + 0x60]
mov ecx, dword [ebp + 0x1c]
mov dword [ebx + 0x18], 0
mov eax, dword [edi]
cmp eax, ecx
jbe 0x5e3088
push ecx
push str.Too_long_data____d__n
jmp 0x5e3191
mov esi, dword [ebp - 0x48]
mov dword [ebp + 0x10], edi
cmp eax, esi
jae 0x5e30ac
cmp dword [ebp - 0x44], 0
jg 0x5e2fdb
jl 0x5e30a6
test esi, esi
jae 0x5e2fdb
lea eax, [ebx + 0x60]
mov dword [ebp + 0x10], eax
lea eax, [ebp + 0x1c]
push eax
lea ecx, [ebx + 0x48]
call fcn.00444780
mov eax, dword [ebp + 0x1c]
test eax, eax
je 0x5e30c4
mov eax, dword [eax + 4]
jmp 0x5e30c6
xor eax, eax
sub eax, esi
lea ecx, [ebp - 0x34]
push eax
push esi
lea eax, [ebp + 0x1c]
push eax
call fcn.005a58e0
push eax
mov ecx, ebx
mov byte [ebp - 4], 0x19
call fcn.004269f0
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 0x18
call fcn.004250c0
cmp byte [ebx + 0x68], 0
je 0x5e30fd
cmp esi, dword [edi]
ja 0x5e30fd
mov eax, dword [ebp + 0x10]
mov dword [eax], esi
mov eax, dword [ebp + 8]
mov ecx, ebx
push 1
push dword [ebp + 0x24]
push dword [ebp + 0x20]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push eax
call fcn.005e35d0
mov esi, eax
lea ecx, [ebp + 0x1c]
jmp 0x5e2f97
cmp dword [ebx + 0x76], 0x15
mov ecx, ebx
jne 0x5e314e
push 1
push dword [ebp + 0x24]
push dword [ebp + 0x20]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push edi
call fcn.005e35d0
lea ecx, [ebp + 0xc]
mov esi, eax
call fcn.004250c0
lea ecx, [ebp - 0x14]
jmp 0x5e2716
lea eax, [ebp + 8]
push eax
call fcn.00444780
push eax
lea ecx, [ebx + 0x48]
mov byte [ebp - 4], 0x1a
call fcn.004269f0
lea ecx, [ebp + 8]
call fcn.004250c0
mov byte [ebp - 4], 0xb
mov eax, dword [ebp + 0x1c]
mov dword [ebx + 0x18], 0
cmp dword [ebx + 0x60], eax
jbe 0x5e2fdb
push eax
push str.Too_long_data____d__n
jmp 0x5e3191
push edx
push str.Too_long_header_error____d__n
lea eax, [ebp + 8]
push eax
call fcn.005ac360
add esp, 0xc
push 0x6a3e24
lea eax, [ebp + 8]
push eax
call fcn.006089ec
push str.Header_error
lea ecx, [ebp + 8]
call fcn.005a5400
push 0x6a3e24
lea eax, [ebp + 8]
push eax
call fcn.006089ec
int3