Function at 0x42e1f0
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
mov ebx, dword [ebp + 8]
push esi
push edi
lea esi, [ebx + 0x18]
nop
mov ecx, dword [ebp + 0x10]
mov eax, dword [esi + 0x5c]
mov dword [esi + 0x60], eax
push dword [ecx]
push 0xa
push eax
call fcn.00442ff0
mov edi, eax
add esp, 0xc
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x64], edi
test edi, edi
je 0x42ef12
sub edi, dword [esi + 0x5c]
inc edi
sub dword [eax], edi
mov eax, dword [esi + 0x64]
inc eax
mov dword [esi + 0x5c], eax
sub eax, dword [esi + 0x60]
push eax
push esi
push ebx
call fcn.0042f170
add esp, 0xc
test eax, eax
jne 0x42ef53
cmp dword [esi + 0x50], 0
mov eax, dword [esi + 0x54]
mov dword [esi + 0x64], eax
mov eax, dword [ebx + 0x534]
mov dword [esi + 0x68], eax
jne 0x42e27f
cmp dword [esi + 0x58], 5
jbe 0x42e27f
push dword [ebx + 0x534]
mov eax, dword [ebp + 0xc]
push eax
push ebx
call fcn.0042efd0
add esp, 0xc
test eax, eax
je 0x42edfb
mov edx, dword [esi + 0x68]
mov al, byte [edx]
cmp al, 0xa
je 0x42ec01
cmp al, 0xd
je 0x42ec05
mov ecx, dword [esi + 0x50]
lea eax, [ecx + 1]
mov dword [esi + 0x50], eax
test ecx, ecx
jne 0x42e499
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x210]
mov eax, dword [eax + 0x3c]
test al, 1
je 0x42e3e7
lea eax, [esi + 0x78]
push eax
lea edi, [ecx + 0x118]
push edi
lea eax, [ebp - 4]
push eax
push str._HTTP__d._d__3d
push edx
call fcn.0041a610
add esp, 0x14
cmp eax, 3
jne 0x42e39f
mov eax, dword [ebp - 4]
lea eax, [eax + eax*4]
add eax, eax
add dword [edi], eax
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0x78]
mov dword [ebx + 0x868c], eax
mov eax, dword [edi]
mov dword [ebx + 0x8694], eax
mov eax, dword [ebx + 0x8620]
test eax, eax
je 0x42e30b
cmp eax, dword [edi]
jle 0x42e313
mov eax, dword [edi]
mov dword [ebx + 0x8620], eax
cmp dword [ebx + 0x2b8], 0
je 0x42e374
mov edx, dword [esi + 0x78]
cmp edx, 0x190
jl 0x42e374
cmp edx, 0x191
jne 0x42e338
cmp dword [ecx + 0x1a8], 0
jne 0x42e374
cmp edx, 0x197
jne 0x42e349
cmp dword [ecx + 0x1ac], 0
jne 0x42e374
mov eax, dword [ebx + 0x8650]
or eax, dword [ebx + 0x8654]
je 0x42eef5
cmp dword [ebx + 0x218], 1
jne 0x42eef5
cmp edx, 0x1a0
jne 0x42eef5
mov eax, dword [edi]
cmp eax, 0xa
jne 0x42e43a
push str.HTTP_1.0__assume_close_after_body_n
push ebx
call fcn.00423a70
mov eax, dword [ebp + 0xc]
add esp, 8
mov dword [eax + 0x198], 1
jmp 0x42e452
lea eax, [esi + 0x78]
push eax
push str._HTTP__3d
push dword [esi + 0x68]
call fcn.0041a610
add esp, 0xc
mov dword [edi], 0xa
test eax, eax
jne 0x42e2e9
push dword [esi + 0x68]
push ebx
call fcn.0042ef60
add esp, 8
test eax, eax
je 0x42ef4a
mov dword [esi + 0x78], 0xc8
mov dword [edi], 0xa
jmp 0x42e2e9
test eax, 0x40000
je 0x42ef4a
lea eax, [esi + 0x78]
push eax
lea edi, [ecx + 0x11c]
push edi
lea eax, [ebp - 8]
push eax
push str._RTSP__d._d__3d
push edx
call fcn.0041a610
add esp, 0x14
cmp eax, 3
jne 0x42ef4a
mov eax, dword [ebp - 8]
mov ecx, dword [ebp + 0xc]
mov dword [ecx + 0x118], 0xb
lea eax, [eax + eax*4]
add eax, eax
add dword [edi], eax
lea edi, [ecx + 0x118]
jmp 0x42e2ec
cmp eax, 0xb
jl 0x42e452
cmp dword [ecx + 0x198], 0
jne 0x42e452
mov dword [ecx + 0x258], 1
mov eax, dword [esi + 0x78]
sub eax, 0xcc
je 0x42e461
sub eax, 0x64
jne 0x42e499
cmp dword [ebx + 0x208], 0
je 0x42e474
mov dword [ebx + 0x869c], 1
mov dword [esi], 0
mov dword [esi + 4], 0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [esi + 0xb4], 1
cmp dword [esi + 0xb4], 0
jne 0x42e5a3
cmp dword [ebx + 0x318], 0
jne 0x42e5a3
push 0xf
push dword [esi + 0x68]
push str.Content_Length:
call fcn.00426db0
add esp, 0xc
test eax, eax
je 0x42e5a3
mov eax, dword [esi + 0x68]
push 0xa
add eax, 0xf
push 0
push eax
call fcn.0044b72e
mov ecx, dword [ebx + 0x280]
add esp, 0xc
mov edi, dword [ebx + 0x284]
or ecx, edi
je 0x42e506
cmp edx, edi
jg 0x42ee2c
jl 0x42e506
cmp eax, dword [ebx + 0x280]
ja 0x42ee2c
test edx, edx
jl 0x42e584
jg 0x42e510
test eax, eax
jb 0x42e584
push edx
push eax
push ebx
mov dword [esi], eax
mov dword [esi + 4], edx
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
call fcn.0042fa80
add esp, 0xc
mov edi, dword [ebp + 0xc]
xor eax, eax
cmp dword [ebx + 0x2c8], eax
setne al
add eax, 2
cmp dword [ebx + 0x2e4], 0
mov dword [ebp + 8], eax
je 0x42e558
push edi
push dword [esi + 0x58]
push dword [esi + 0x68]
push 1
push ebx
call fcn.004238f0
mov eax, dword [ebp + 8]
add esp, 0x14
push dword [esi + 0x58]
push dword [esi + 0x68]
push eax
push edi
call fcn.00423790
add esp, 0x10
test eax, eax
jne 0x42ef53
mov eax, dword [esi + 0x58]
add dword [ebx + 0x86a0], eax
mov eax, dword [esi + 0x58]
add dword [ebx + 0x48], eax
jmp 0x42edca
mov edi, dword [ebp + 0xc]
push edx
push eax
push str.Negative_content_length:__lld__closing_after_transfer_n
push ebx
mov dword [edi + 0x198], 1
call fcn.00423a70
add esp, 0x10
jmp 0x42e529
push 0xd
push dword [esi + 0x68]
push str.Content_Type:
call fcn.00426db0
add esp, 0xc
test eax, eax
je 0x42e60b
push dword [esi + 0x68]
call fcn.0042f020
mov edi, eax
add esp, 4
test edi, edi
je 0x42ee46
cmp byte [edi], 0
jne 0x42e5e2
push edi
call dword [0x615b18]
add esp, 4
jmp 0x42e526
mov eax, dword [ebx + 0x86b4]
test eax, eax
je 0x42e600
push eax
call dword [0x615b18]
add esp, 4
mov dword [ebx + 0x86b4], 0
mov dword [ebx + 0x86b4], edi
jmp 0x42e526
mov edi, dword [ebp + 0xc]
cmp dword [edi + 0x118], 0xa
jne 0x42e656
cmp dword [edi + 0x1a4], 0
je 0x42e656
push str.keep_alive
push str.Proxy_Connection:
push dword [esi + 0x68]
call fcn.0042dce0
add esp, 0xc
test eax, eax
je 0x42e656
push str.HTTP_1.0_proxy_connection_set_to_keep_alive__n
push ebx
mov dword [edi + 0x198], 0
call fcn.00423a70
add esp, 8
jmp 0x42e529
cmp dword [edi + 0x118], 0xb
jne 0x42e69e
cmp dword [edi + 0x1a4], 0
je 0x42e69e
push str.close
push str.Proxy_Connection:
push dword [esi + 0x68]
call fcn.0042dce0
add esp, 0xc
test eax, eax
je 0x42e69e
push str.HTTP_1.1_proxy_connection_set_close__n
push ebx
mov dword [edi + 0x198], 1
call fcn.00423a70
add esp, 8
jmp 0x42e529
cmp dword [edi + 0x118], 0xa
jne 0x42e6dd
push str.keep_alive
push str.Connection:
push dword [esi + 0x68]
call fcn.0042dce0
add esp, 0xc
test eax, eax
je 0x42e6dd
push str.HTTP_1.0_connection_set_to_keep_alive__n
push ebx
mov dword [edi + 0x198], 0
call fcn.00423a70
add esp, 8
jmp 0x42e529
push str.close
push str.Connection:
push dword [esi + 0x68]
call fcn.0042dce0
add esp, 0xc
test eax, eax
je 0x42e705
mov dword [edi + 0x198], 1
jmp 0x42e529
push 0x12
push dword [esi + 0x68]
push str.Transfer_Encoding:
call fcn.00426db0
add esp, 0xc
test eax, eax
je 0x42e886
mov edi, dword [esi + 0x68]
add edi, 0x12
mov al, byte [edi]
test al, al
je 0x42e74d
nop dword [eax + eax]
movzx eax, al
push eax
call fcn.0044c199
add esp, 4
test eax, eax
jne 0x42e745
cmp byte [edi], 0x2c
jne 0x42e74d
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x42e730
push 7
push edi
push str.chunked
call fcn.00426db0
add esp, 0xc
test eax, eax
je 0x42e779
push dword [ebp + 0xc]
mov dword [esi + 0xc8], 1
call fcn.0042bb90
add esp, 4
add edi, 7
cmp dword [esi + 0x88], 0
jne 0x42e526
push 8
push edi
push str.identity
call fcn.00426db0
add esp, 0xc
test eax, eax
je 0x42e7b0
mov eax, 8
mov dword [esi + 0x88], 0
add edi, eax
jmp 0x42e725
push 7
push edi
push str.deflate
call fcn.00426db0
add esp, 0xc
test eax, eax
je 0x42e7da
mov eax, 7
mov dword [esi + 0x88], 1
add edi, eax
jmp 0x42e725
push 4
push edi
push str.gzip
call fcn.00426db0
add esp, 0xc
test eax, eax
je 0x42e804
mov eax, 4
mov dword [esi + 0x88], 2
add edi, eax
jmp 0x42e725
push 6
push edi
push str.x_gzip
call fcn.00426db0
add esp, 0xc
test eax, eax
je 0x42e82e
mov eax, 6
mov dword [esi + 0x88], 2
add edi, eax
jmp 0x42e725
push 8
push edi
push str.compress
call fcn.00426db0
add esp, 0xc
test eax, eax
je 0x42e858
mov eax, 8
mov dword [esi + 0x88], 3
add edi, eax
jmp 0x42e725
push 0xa
push edi
push str.x_compress
call fcn.00426db0
add esp, 0xc
test eax, eax
je 0x42e526
mov eax, 0xa
mov dword [esi + 0x88], 3
add edi, eax
jmp 0x42e725
push 0x11
push dword [esi + 0x68]
push str.Content_Encoding:
call fcn.00426db0
add esp, 0xc
test eax, eax
je 0x42e990
cmp dword [ebx + 0x354], 0
je 0x42e990
mov edi, dword [esi + 0x68]
add edi, 0x11
mov al, byte [edi]
test al, al
je 0x42e8d8
nop dword [eax]
movzx eax, al
push eax
call fcn.0044c199
add esp, 4
test eax, eax
je 0x42e8d8
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x42e8c0
push 8
push edi
push str.identity
call fcn.00426db0
add esp, 0xc
test eax, eax
je 0x42e8fb
mov dword [esi + 0x88], 0
jmp 0x42e526
push 7
push edi
push str.deflate
call fcn.00426db0
add esp, 0xc
test eax, eax
je 0x42e91e
mov dword [esi + 0x88], 1
jmp 0x42e526
push 4
push edi
push str.gzip
call fcn.00426db0
add esp, 0xc
test eax, eax
jne 0x42e981
push 6
push edi
push str.x_gzip
call fcn.00426db0
add esp, 0xc
test eax, eax
jne 0x42e981
push 8
push edi
push str.compress
call fcn.00426db0
add esp, 0xc
test eax, eax
jne 0x42e972
push 0xa
push edi
push str.x_compress
call fcn.00426db0
add esp, 0xc
test eax, eax
je 0x42e526
mov dword [esi + 0x88], 3
jmp 0x42e526
mov dword [esi + 0x88], 2
jmp 0x42e526
push 0xe
push dword [esi + 0x68]
push str.Content_Range:
call fcn.00426db0
add esp, 0xc
test eax, eax
je 0x42ea07
mov edi, dword [esi + 0x68]
add edi, 0xe
mov al, byte [edi]
test al, al
je 0x42e9ca
movzx eax, al
push eax
call fcn.0044c0e1
add esp, 4
test eax, eax
jne 0x42e9ca
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x42e9b2
push 0xa
push 0
push edi
call fcn.0044b72e
mov dword [esi + 0x70], eax
add esp, 0xc
mov dword [esi + 0x74], edx
mov eax, dword [ebx + 0x8650]
cmp eax, dword [esi + 0x70]
jne 0x42e526
mov edi, dword [ebp + 0xc]
cmp dword [ebx + 0x8654], edx
jne 0x42e529
mov dword [esi + 0x6c], 1
jmp 0x42e529
cmp dword [ebx + 0x418], 0
je 0x42ea6f
push 0xb
push dword [esi + 0x68]
push str.Set_Cookie:
call fcn.00426db0
add esp, 0xc
test eax, eax
je 0x42ea6f
push 2
push 2
push ebx
call fcn.00426cc0
mov eax, dword [edi + 0x240]
add esp, 0xc
test eax, eax
jne 0x42ea43
mov eax, dword [edi + 0x80]
push dword [ebx + 0x8638]
push eax
mov eax, dword [esi + 0x68]
add eax, 0xb
push eax
push 1
push dword [ebx + 0x418]
push ebx
call fcn.004193a0
push 2
push ebx
call fcn.00426d00
add esp, 0x20
jmp 0x42e529
push 0xe
push dword [esi + 0x68]
push str.Last_Modified:
call fcn.00426db0
add esp, 0xc
test eax, eax
je 0x42eadb
cmp dword [ebx + 0x208], 0
jne 0x42ea97
cmp dword [ebx + 0x29c], 0
je 0x42eadb
push 0
call fcn.0044b85d
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x10]
push eax
mov eax, dword [esi + 0x68]
add eax, 0xe
mov dword [ebp - 0xc], edx
push eax
call fcn.00425110
add esp, 0xc
mov dword [esi + 0x90], eax
mov dword [esi + 0x94], edx
cmp dword [ebx + 0x29c], 0
je 0x42e529
mov dword [ebx + 0x8698], eax
jmp 0x42e529
push 0x11
push dword [esi + 0x68]
push str.WWW_Authenticate:
call fcn.00426db0
add esp, 0xc
test eax, eax
je 0x42eafb
mov eax, dword [esi + 0x78]
cmp eax, 0x191
je 0x42eb1b
push 0x13
push dword [esi + 0x68]
push str.Proxy_authenticate:
call fcn.00426db0
add esp, 0xc
test eax, eax
je 0x42eb35
mov eax, dword [esi + 0x78]
cmp eax, 0x197
jne 0x42eb35
push dword [esi + 0x68]
push eax
push edi
call fcn.0042df80
add esp, 0xc
test eax, eax
jne 0x42ef53
jmp 0x42e529
mov eax, dword [esi + 0x78]
cmp eax, 0x12c
jl 0x42ebd5
cmp eax, 0x190
jge 0x42ebd5
push 9
push dword [esi + 0x68]
push str.Location:
call fcn.00426db0
add esp, 0xc
test eax, eax
je 0x42ebd5
cmp dword [ebx + 0xd0], 0
jne 0x42ebd5
push dword [esi + 0x68]
call fcn.0042f020
add esp, 4
test eax, eax
je 0x42ee46
cmp byte [eax], 0
jne 0x42eb94
push eax
call dword [0x615b18]
add esp, 4
jmp 0x42e529
cmp dword [ebx + 0x2bc], 0
mov dword [ebx + 0xd0], eax
je 0x42e529
push eax
call dword [0x615b20]
add esp, 4
mov dword [ebx + 0xd4], eax
test eax, eax
je 0x42ee46
push edi
call fcn.0042f330
add esp, 4
test eax, eax
jne 0x42ef53
jmp 0x42e529
mov eax, dword [edi + 0x210]
test dword [eax + 0x3c], 0x40000
je 0x42e529
push dword [esi + 0x68]
push edi
call fcn.0043ab60
add esp, 8
test eax, eax
jne 0x42ef53
jmp 0x42e529
cmp al, 0xd
jne 0x42ec0b
lea eax, [edx + 1]
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x68]
cmp byte [eax], 0xa
jne 0x42ec17
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x78]
cmp eax, 0x64
jl 0x42ec53
cmp eax, 0xc7
jg 0x42ec53
cmp dword [esi + 0x84], 0
mov edi, dword [ebp + 0xc]
mov dword [esi + 0x48], 1
mov dword [esi + 0x50], 0
je 0x42eca9
or dword [esi + 0xa8], 2
mov dword [esi + 0x84], 0
jmp 0x42eca9
mov eax, dword [esi]
and eax, dword [esi + 4]
mov edi, dword [ebp + 0xc]
mov dword [esi + 0x48], 0
cmp eax, 0xffffffff
jne 0x42eca9
cmp dword [esi + 0xc8], 0
jne 0x42eca9
cmp dword [edi + 0x198], 0
jne 0x42eca9
cmp dword [edi + 0x118], 0xb
jl 0x42eca9
mov eax, dword [edi + 0x210]
test dword [eax + 0x3c], 0x40000
jne 0x42eca9
push str.no_chunk__no_close__no_size._Assume_close_to_signal_end_n
push ebx
call fcn.00423a70
add esp, 8
mov dword [edi + 0x198], 1
push edi
call fcn.0042f4e0
add esp, 4
test eax, eax
jne 0x42eef5
mov eax, dword [ebx + 0x534]
mov ecx, dword [esi + 0x68]
sub ecx, eax
push ecx
push eax
xor eax, eax
mov dword [ebp + 8], ecx
cmp dword [ebx + 0x2c8], eax
setne al
add eax, 2
push eax
push edi
call fcn.00423790
add esp, 0x10
test eax, eax
jne 0x42ef53
mov eax, dword [ebp + 8]
add dword [ebx + 0x86a0], eax
add dword [ebx + 0x48], eax
mov ecx, dword [esi + 0x78]
mov eax, dword [ebx + 0x48]
cmp ecx, 0x64
jl 0x42ed09
cmp ecx, 0xc7
jle 0x42ed0b
xor eax, eax
mov dword [ebx + 0x4c], eax
mov eax, dword [ebp + 0x14]
cmp dword [eax], 0
jne 0x42edc0
push edi
call fcn.0042ddb0
add esp, 4
test eax, eax
jne 0x42ef53
cmp dword [esi + 0x78], 0x12c
jl 0x42ed9f
cmp dword [edi + 0x1d4], eax
jne 0x42ed9f
cmp dword [edi + 0x198], eax
jne 0x42ed9f
cmp dword [edi + 0x1d8], eax
jne 0x42eda8
mov eax, dword [ebx + 0x218]
add eax, 0xfffffffe
cmp eax, 2
ja 0x42ed9f
cmp dword [esi + 0xac], 0
jne 0x42ed9f
push str.HTTP_error_before_end_of_send__stop_sending_n
push ebx
call fcn.00423a70
mov dword [edi + 0x198], 1
add esp, 8
and dword [esi + 0xa8], 0xfffffffd
mov dword [esi + 0xac], 1
cmp dword [ebx + 0x8624], 0
je 0x42ed9f
mov dword [esi + 0x84], 3
cmp dword [edi + 0x1d8], 0
je 0x42edbd
push str.Keep_sending_data_to_get_tossed_away__n
push ebx
call fcn.00423a70
add esp, 8
or dword [esi + 0xa8], 2
mov eax, dword [ebp + 0x14]
cmp dword [esi + 0x48], 0
je 0x42ee52
mov eax, dword [ebx + 0x534]
mov dword [esi + 0x54], eax
mov eax, dword [ebp + 0x14]
mov dword [esi + 0x58], 0
cmp dword [eax], 0
jne 0x42ef51
mov eax, dword [esi + 0x5c]
cmp byte [eax], 0
jne 0x42e200
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x48], 0
cmp dword [eax], 0
je 0x42ee1a
pop edi
mov dword [esi + 0x4c], 1
xor eax, eax
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov dword [esi + 0x4c], 2
mov dword [eax], edi
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push str.Maximum_file_size_exceeded
push ebx
call fcn.004239d0
add esp, 8
mov eax, 0x3f
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x1b
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [ebx + 0x2d4], 0
je 0x42ee63
mov dword [eax], 1
jmp 0x42ee87
cmp dword [esi + 0xc8], 0
je 0x42ee87
mov dword [esi], 0xffffffff
mov dword [esi + 4], 0xffffffff
mov dword [esi + 0x10], 0xffffffff
mov dword [esi + 0x14], 0xffffffff
mov ecx, dword [esi]
mov eax, dword [esi + 4]
cmp ecx, 0xffffffff
jne 0x42ee95
cmp eax, ecx
je 0x42eeab
push eax
push ecx
push ebx
call fcn.0042fa80
mov eax, dword [esi]
add esp, 0xc
mov dword [esi + 0x10], eax
mov eax, dword [esi + 4]
mov dword [esi + 0x14], eax
cmp dword [esi + 0x10], 0
jne 0x42eec2
cmp dword [esi + 0x14], 0
jne 0x42eec2
mov eax, dword [ebp + 0x14]
mov dword [eax], 1
jmp 0x42eeca
mov eax, dword [ebp + 0x14]
cmp dword [eax], 0
je 0x42eed1
and dword [esi + 0xa8], 0xfffffffe
cmp dword [ebx + 0x2e4], 0
je 0x42ef51
push edi
push dword [ebp + 8]
push dword [esi + 0x60]
push 1
push ebx
call fcn.004238f0
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push dword [esi + 0x78]
push str.The_requested_URL_returned_error:__d
push ebx
call fcn.004239d0
add esp, 0xc
mov eax, 0x16
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push dword [eax]
push esi
push ebx
call fcn.0042f170
add esp, 0xc
test eax, eax
jne 0x42ef53
cmp dword [esi + 0x50], eax
jne 0x42ef51
cmp dword [esi + 0x58], 5
jbe 0x42ef51
push dword [ebx + 0x534]
push dword [ebp + 0xc]
push ebx
call fcn.0042efd0
add esp, 0xc
test eax, eax
jne 0x42ef51
mov dword [esi + 0x4c], 2
mov dword [esi + 0x48], 0
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret