Function at 0x1002d6c0
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.10045940
mov edi, eax
add esp, 0xc
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x64], edi
test edi, edi
je 0x1002e3e2
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.1002e640
add esp, 0xc
test eax, eax
jne 0x1002e423
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 0x1002d74f
cmp dword [esi + 0x58], 5
jbe 0x1002d74f
push dword [ebx + 0x534]
mov eax, dword [ebp + 0xc]
push eax
push ebx
call fcn.1002e4a0
add esp, 0xc
test eax, eax
je 0x1002e2cb
mov edx, dword [esi + 0x68]
mov al, byte [edx]
cmp al, 0xa
je 0x1002e0d1
cmp al, 0xd
je 0x1002e0d5
mov ecx, dword [esi + 0x50]
lea eax, [ecx + 1]
mov dword [esi + 0x50], eax
test ecx, ecx
jne 0x1002d969
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x210]
mov eax, dword [eax + 0x3c]
test al, 1
je 0x1002d8b7
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.1000b5cc
add esp, 0x14
cmp eax, 3
jne 0x1002d86f
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 0x1002d7db
cmp eax, dword [edi]
jle 0x1002d7e3
mov eax, dword [edi]
mov dword [ebx + 0x8620], eax
cmp dword [ebx + 0x2b8], 0
je 0x1002d844
mov edx, dword [esi + 0x78]
cmp edx, 0x190
jl 0x1002d844
cmp edx, 0x191
jne 0x1002d808
cmp dword [ecx + 0x1a8], 0
jne 0x1002d844
cmp edx, 0x197
jne 0x1002d819
cmp dword [ecx + 0x1ac], 0
jne 0x1002d844
mov eax, dword [ebx + 0x8650]
or eax, dword [ebx + 0x8654]
je 0x1002e3c5
cmp dword [ebx + 0x218], 1
jne 0x1002e3c5
cmp edx, 0x1a0
jne 0x1002e3c5
mov eax, dword [edi]
cmp eax, 0xa
jne 0x1002d90a
push str.HTTP_1.0__assume_close_after_body_n
push ebx
call fcn.10022f80
mov eax, dword [ebp + 0xc]
add esp, 8
mov dword [eax + 0x198], 1
jmp 0x1002d922
lea eax, [esi + 0x78]
push eax
push str._HTTP__3d
push dword [esi + 0x68]
call fcn.1000b5cc
add esp, 0xc
mov dword [edi], 0xa
test eax, eax
jne 0x1002d7b9
push dword [esi + 0x68]
push ebx
call fcn.1002e430
add esp, 8
test eax, eax
je 0x1002e41a
mov dword [esi + 0x78], 0xc8
mov dword [edi], 0xa
jmp 0x1002d7b9
test eax, 0x40000
je 0x1002e41a
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.1000b5cc
add esp, 0x14
cmp eax, 3
jne 0x1002e41a
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 0x1002d7bc
cmp eax, 0xb
jl 0x1002d922
cmp dword [ecx + 0x198], 0
jne 0x1002d922
mov dword [ecx + 0x258], 1
mov eax, dword [esi + 0x78]
sub eax, 0xcc
je 0x1002d931
sub eax, 0x64
jne 0x1002d969
cmp dword [ebx + 0x208], 0
je 0x1002d944
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 0x1002da73
cmp dword [ebx + 0x318], 0
jne 0x1002da73
push 0xf
push dword [esi + 0x68]
push str.Content_Length:
call fcn.10026280
add esp, 0xc
test eax, eax
je 0x1002da73
mov eax, dword [esi + 0x68]
push 0xa
add eax, 0xf
push 0
push eax
call fcn.10057d36
mov ecx, dword [ebx + 0x280]
add esp, 0xc
mov edi, dword [ebx + 0x284]
or ecx, edi
je 0x1002d9d6
cmp edx, edi
jg 0x1002e2fc
jl 0x1002d9d6
cmp eax, dword [ebx + 0x280]
ja 0x1002e2fc
test edx, edx
jl 0x1002da54
jg 0x1002d9e0
test eax, eax
jb 0x1002da54
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.1002ef50
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 0x1002da28
push edi
push dword [esi + 0x58]
push dword [esi + 0x68]
push 1
push ebx
call fcn.10022e00
mov eax, dword [ebp + 8]
add esp, 0x14
push dword [esi + 0x58]
push dword [esi + 0x68]
push eax
push edi
call fcn.10022ca0
add esp, 0x10
test eax, eax
jne 0x1002e423
mov eax, dword [esi + 0x58]
add dword [ebx + 0x86a0], eax
mov eax, dword [esi + 0x58]
add dword [ebx + 0x48], eax
jmp 0x1002e29a
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.10022f80
add esp, 0x10
jmp 0x1002d9f9
push 0xd
push dword [esi + 0x68]
push str.Content_Type:
call fcn.10026280
add esp, 0xc
test eax, eax
je 0x1002dadb
push dword [esi + 0x68]
call fcn.1002e4f0
mov edi, eax
add esp, 4
test edi, edi
je 0x1002e316
cmp byte [edi], 0
jne 0x1002dab2
push edi
call dword [0x100880b4]
add esp, 4
jmp 0x1002d9f6
mov eax, dword [ebx + 0x86b4]
test eax, eax
je 0x1002dad0
push eax
call dword [0x100880b4]
add esp, 4
mov dword [ebx + 0x86b4], 0
mov dword [ebx + 0x86b4], edi
jmp 0x1002d9f6
mov edi, dword [ebp + 0xc]
cmp dword [edi + 0x118], 0xa
jne 0x1002db26
cmp dword [edi + 0x1a4], 0
je 0x1002db26
push str.keep_alive
push str.Proxy_Connection:
push dword [esi + 0x68]
call fcn.1002d1b0
add esp, 0xc
test eax, eax
je 0x1002db26
push str.HTTP_1.0_proxy_connection_set_to_keep_alive__n
push ebx
mov dword [edi + 0x198], 0
call fcn.10022f80
add esp, 8
jmp 0x1002d9f9
cmp dword [edi + 0x118], 0xb
jne 0x1002db6e
cmp dword [edi + 0x1a4], 0
je 0x1002db6e
push str.close
push str.Proxy_Connection:
push dword [esi + 0x68]
call fcn.1002d1b0
add esp, 0xc
test eax, eax
je 0x1002db6e
push str.HTTP_1.1_proxy_connection_set_close__n
push ebx
mov dword [edi + 0x198], 1
call fcn.10022f80
add esp, 8
jmp 0x1002d9f9
cmp dword [edi + 0x118], 0xa
jne 0x1002dbad
push str.keep_alive
push str.Connection:
push dword [esi + 0x68]
call fcn.1002d1b0
add esp, 0xc
test eax, eax
je 0x1002dbad
push str.HTTP_1.0_connection_set_to_keep_alive__n
push ebx
mov dword [edi + 0x198], 0
call fcn.10022f80
add esp, 8
jmp 0x1002d9f9
push str.close
push str.Connection:
push dword [esi + 0x68]
call fcn.1002d1b0
add esp, 0xc
test eax, eax
je 0x1002dbd5
mov dword [edi + 0x198], 1
jmp 0x1002d9f9
push 0x12
push dword [esi + 0x68]
push str.Transfer_Encoding:
call fcn.10026280
add esp, 0xc
test eax, eax
je 0x1002dd56
mov edi, dword [esi + 0x68]
add edi, 0x12
mov al, byte [edi]
test al, al
je 0x1002dc1d
nop dword [eax + eax]
movzx eax, al
push eax
call fcn.10056e41
add esp, 4
test eax, eax
jne 0x1002dc15
cmp byte [edi], 0x2c
jne 0x1002dc1d
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x1002dc00
push 7
push edi
push str.chunked
call fcn.10026280
add esp, 0xc
test eax, eax
je 0x1002dc49
push dword [ebp + 0xc]
mov dword [esi + 0xc8], 1
call fcn.1002b060
add esp, 4
add edi, 7
cmp dword [esi + 0x88], 0
jne 0x1002d9f6
push 8
push edi
push str.identity
call fcn.10026280
add esp, 0xc
test eax, eax
je 0x1002dc80
mov eax, 8
mov dword [esi + 0x88], 0
add edi, eax
jmp 0x1002dbf5
push 7
push edi
push str.deflate
call fcn.10026280
add esp, 0xc
test eax, eax
je 0x1002dcaa
mov eax, 7
mov dword [esi + 0x88], 1
add edi, eax
jmp 0x1002dbf5
push 4
push edi
push str.gzip
call fcn.10026280
add esp, 0xc
test eax, eax
je 0x1002dcd4
mov eax, 4
mov dword [esi + 0x88], 2
add edi, eax
jmp 0x1002dbf5
push 6
push edi
push str.x_gzip
call fcn.10026280
add esp, 0xc
test eax, eax
je 0x1002dcfe
mov eax, 6
mov dword [esi + 0x88], 2
add edi, eax
jmp 0x1002dbf5
push 8
push edi
push str.compress
call fcn.10026280
add esp, 0xc
test eax, eax
je 0x1002dd28
mov eax, 8
mov dword [esi + 0x88], 3
add edi, eax
jmp 0x1002dbf5
push 0xa
push edi
push str.x_compress
call fcn.10026280
add esp, 0xc
test eax, eax
je 0x1002d9f6
mov eax, 0xa
mov dword [esi + 0x88], 3
add edi, eax
jmp 0x1002dbf5
push 0x11
push dword [esi + 0x68]
push str.Content_Encoding:
call fcn.10026280
add esp, 0xc
test eax, eax
je 0x1002de60
cmp dword [ebx + 0x354], 0
je 0x1002de60
mov edi, dword [esi + 0x68]
add edi, 0x11
mov al, byte [edi]
test al, al
je 0x1002dda8
nop dword [eax]
movzx eax, al
push eax
call fcn.10056e41
add esp, 4
test eax, eax
je 0x1002dda8
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x1002dd90
push 8
push edi
push str.identity
call fcn.10026280
add esp, 0xc
test eax, eax
je 0x1002ddcb
mov dword [esi + 0x88], 0
jmp 0x1002d9f6
push 7
push edi
push str.deflate
call fcn.10026280
add esp, 0xc
test eax, eax
je 0x1002ddee
mov dword [esi + 0x88], 1
jmp 0x1002d9f6
push 4
push edi
push str.gzip
call fcn.10026280
add esp, 0xc
test eax, eax
jne 0x1002de51
push 6
push edi
push str.x_gzip
call fcn.10026280
add esp, 0xc
test eax, eax
jne 0x1002de51
push 8
push edi
push str.compress
call fcn.10026280
add esp, 0xc
test eax, eax
jne 0x1002de42
push 0xa
push edi
push str.x_compress
call fcn.10026280
add esp, 0xc
test eax, eax
je 0x1002d9f6
mov dword [esi + 0x88], 3
jmp 0x1002d9f6
mov dword [esi + 0x88], 2
jmp 0x1002d9f6
push 0xe
push dword [esi + 0x68]
push str.Content_Range:
call fcn.10026280
add esp, 0xc
test eax, eax
je 0x1002ded7
mov edi, dword [esi + 0x68]
add edi, 0xe
mov al, byte [edi]
test al, al
je 0x1002de9a
movzx eax, al
push eax
call fcn.10056d89
add esp, 4
test eax, eax
jne 0x1002de9a
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x1002de82
push 0xa
push 0
push edi
call fcn.10057d36
mov dword [esi + 0x70], eax
add esp, 0xc
mov dword [esi + 0x74], edx
mov eax, dword [ebx + 0x8650]
cmp eax, dword [esi + 0x70]
jne 0x1002d9f6
mov edi, dword [ebp + 0xc]
cmp dword [ebx + 0x8654], edx
jne 0x1002d9f9
mov dword [esi + 0x6c], 1
jmp 0x1002d9f9
cmp dword [ebx + 0x418], 0
je 0x1002df3f
push 0xb
push dword [esi + 0x68]
push str.Set_Cookie:
call fcn.10026280
add esp, 0xc
test eax, eax
je 0x1002df3f
push 2
push 2
push ebx
call fcn.10026190
mov eax, dword [edi + 0x240]
add esp, 0xc
test eax, eax
jne 0x1002df13
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.10018910
push 2
push ebx
call fcn.100261d0
add esp, 0x20
jmp 0x1002d9f9
push 0xe
push dword [esi + 0x68]
push str.Last_Modified:
call fcn.10026280
add esp, 0xc
test eax, eax
je 0x1002dfab
cmp dword [ebx + 0x208], 0
jne 0x1002df67
cmp dword [ebx + 0x29c], 0
je 0x1002dfab
push 0
call fcn.100551f4
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.10024620
add esp, 0xc
mov dword [esi + 0x90], eax
mov dword [esi + 0x94], edx
cmp dword [ebx + 0x29c], 0
je 0x1002d9f9
mov dword [ebx + 0x8698], eax
jmp 0x1002d9f9
push 0x11
push dword [esi + 0x68]
push str.WWW_Authenticate:
call fcn.10026280
add esp, 0xc
test eax, eax
je 0x1002dfcb
mov eax, dword [esi + 0x78]
cmp eax, 0x191
je 0x1002dfeb
push 0x13
push dword [esi + 0x68]
push str.Proxy_authenticate:
call fcn.10026280
add esp, 0xc
test eax, eax
je 0x1002e005
mov eax, dword [esi + 0x78]
cmp eax, 0x197
jne 0x1002e005
push dword [esi + 0x68]
push eax
push edi
call fcn.1002d450
add esp, 0xc
test eax, eax
jne 0x1002e423
jmp 0x1002d9f9
mov eax, dword [esi + 0x78]
cmp eax, 0x12c
jl 0x1002e0a5
cmp eax, 0x190
jge 0x1002e0a5
push 9
push dword [esi + 0x68]
push str.Location:
call fcn.10026280
add esp, 0xc
test eax, eax
je 0x1002e0a5
cmp dword [ebx + 0xd0], 0
jne 0x1002e0a5
push dword [esi + 0x68]
call fcn.1002e4f0
add esp, 4
test eax, eax
je 0x1002e316
cmp byte [eax], 0
jne 0x1002e064
push eax
call dword [0x100880b4]
add esp, 4
jmp 0x1002d9f9
cmp dword [ebx + 0x2bc], 0
mov dword [ebx + 0xd0], eax
je 0x1002d9f9
push eax
call dword [0x100880bc]
add esp, 4
mov dword [ebx + 0xd4], eax
test eax, eax
je 0x1002e316
push edi
call fcn.1002e800
add esp, 4
test eax, eax
jne 0x1002e423
jmp 0x1002d9f9
mov eax, dword [edi + 0x210]
test dword [eax + 0x3c], 0x40000
je 0x1002d9f9
push dword [esi + 0x68]
push edi
call fcn.1003a020
add esp, 8
test eax, eax
jne 0x1002e423
jmp 0x1002d9f9
cmp al, 0xd
jne 0x1002e0db
lea eax, [edx + 1]
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x68]
cmp byte [eax], 0xa
jne 0x1002e0e7
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x78]
cmp eax, 0x64
jl 0x1002e123
cmp eax, 0xc7
jg 0x1002e123
cmp dword [esi + 0x84], 0
mov edi, dword [ebp + 0xc]
mov dword [esi + 0x48], 1
mov dword [esi + 0x50], 0
je 0x1002e179
or dword [esi + 0xa8], 2
mov dword [esi + 0x84], 0
jmp 0x1002e179
mov eax, dword [esi]
and eax, dword [esi + 4]
mov edi, dword [ebp + 0xc]
mov dword [esi + 0x48], 0
cmp eax, 0xffffffff
jne 0x1002e179
cmp dword [esi + 0xc8], 0
jne 0x1002e179
cmp dword [edi + 0x198], 0
jne 0x1002e179
cmp dword [edi + 0x118], 0xb
jl 0x1002e179
mov eax, dword [edi + 0x210]
test dword [eax + 0x3c], 0x40000
jne 0x1002e179
push str.no_chunk__no_close__no_size._Assume_close_to_signal_end_n
push ebx
call fcn.10022f80
add esp, 8
mov dword [edi + 0x198], 1
push edi
call fcn.1002e9b0
add esp, 4
test eax, eax
jne 0x1002e3c5
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.10022ca0
add esp, 0x10
test eax, eax
jne 0x1002e423
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 0x1002e1d9
cmp ecx, 0xc7
jle 0x1002e1db
xor eax, eax
mov dword [ebx + 0x4c], eax
mov eax, dword [ebp + 0x14]
cmp dword [eax], 0
jne 0x1002e290
push edi
call fcn.1002d280
add esp, 4
test eax, eax
jne 0x1002e423
cmp dword [esi + 0x78], 0x12c
jl 0x1002e26f
cmp dword [edi + 0x1d4], eax
jne 0x1002e26f
cmp dword [edi + 0x198], eax
jne 0x1002e26f
cmp dword [edi + 0x1d8], eax
jne 0x1002e278
mov eax, dword [ebx + 0x218]
add eax, 0xfffffffe
cmp eax, 2
ja 0x1002e26f
cmp dword [esi + 0xac], 0
jne 0x1002e26f
push str.HTTP_error_before_end_of_send__stop_sending_n
push ebx
call fcn.10022f80
mov dword [edi + 0x198], 1
add esp, 8
and dword [esi + 0xa8], 0xfffffffd
mov dword [esi + 0xac], 1
cmp dword [ebx + 0x8624], 0
je 0x1002e26f
mov dword [esi + 0x84], 3
cmp dword [edi + 0x1d8], 0
je 0x1002e28d
push str.Keep_sending_data_to_get_tossed_away__n
push ebx
call fcn.10022f80
add esp, 8
or dword [esi + 0xa8], 2
mov eax, dword [ebp + 0x14]
cmp dword [esi + 0x48], 0
je 0x1002e322
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 0x1002e421
mov eax, dword [esi + 0x5c]
cmp byte [eax], 0
jne 0x1002d6d0
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 0x1002e2ea
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.10022ee0
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 0x1002e333
mov dword [eax], 1
jmp 0x1002e357
cmp dword [esi + 0xc8], 0
je 0x1002e357
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 0x1002e365
cmp eax, ecx
je 0x1002e37b
push eax
push ecx
push ebx
call fcn.1002ef50
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 0x1002e392
cmp dword [esi + 0x14], 0
jne 0x1002e392
mov eax, dword [ebp + 0x14]
mov dword [eax], 1
jmp 0x1002e39a
mov eax, dword [ebp + 0x14]
cmp dword [eax], 0
je 0x1002e3a1
and dword [esi + 0xa8], 0xfffffffe
cmp dword [ebx + 0x2e4], 0
je 0x1002e421
push edi
push dword [ebp + 8]
push dword [esi + 0x60]
push 1
push ebx
call fcn.10022e00
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.10022ee0
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.1002e640
add esp, 0xc
test eax, eax
jne 0x1002e423
cmp dword [esi + 0x50], eax
jne 0x1002e421
cmp dword [esi + 0x58], 5
jbe 0x1002e421
push dword [ebx + 0x534]
push dword [ebp + 0xc]
push ebx
call fcn.1002e4a0
add esp, 0xc
test eax, eax
jne 0x1002e421
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