Function at 0x45e880
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
lea esi, [edi + 0x18]
nop
mov eax, dword [esi + 0x5c]
mov ecx, dword [ebp + 0x10]
mov dword [esi + 0x60], eax
mov edx, dword [ecx]
push edx
push 0xa
push eax
call fcn.00482900
add esp, 0xc
mov dword [esi + 0x64], eax
mov ebx, edi
test eax, eax
je 0x45f482
sub eax, dword [esi + 0x5c]
mov ecx, dword [ebp + 0x10]
inc eax
sub dword [ecx], eax
mov dword [ebp - 4], eax
mov eax, dword [esi + 0x64]
inc eax
mov dword [esi + 0x5c], eax
sub eax, dword [esi + 0x60]
push eax
call fcn.0045cc30
add esp, 4
test eax, eax
jne 0x45f5ed
cmp dword [esi + 0x50], 0
mov eax, dword [esi + 0x54]
mov dword [esi + 0x64], eax
mov ecx, dword [edi + 0x558]
mov dword [esi + 0x68], ecx
jne 0x45e90b
cmp dword [esi + 0x58], 5
jbe 0x45e90b
mov ebx, dword [edi + 0x558]
mov eax, edi
call fcn.0045cc20
test eax, eax
je 0x45f4d1
mov eax, dword [esi + 0x68]
mov cl, byte [eax]
cmp cl, 0xa
je 0x45f27a
cmp cl, 0xd
je 0x45f27f
mov ecx, dword [esi + 0x50]
lea edx, [ecx + 1]
mov dword [esi + 0x50], edx
test ecx, ecx
jne 0x45eb0a
mov edx, dword [ebp + 0xc]
mov ecx, dword [edx + 0x214]
mov ecx, dword [ecx + 0x3c]
test cl, 1
je 0x45e9b5
mov edi, edx
lea ebx, [esi + 0x78]
push ebx
add edi, 0x118
push edi
lea edx, [ebp - 8]
push edx
push str._HTTP__d._d__3d
push eax
call fcn.00486cbf
add esp, 0x14
cmp eax, 3
jne 0x45e977
mov eax, dword [ebp - 8]
lea eax, [eax + eax*4]
add eax, eax
add dword [edi], eax
jmp 0x45ea00
mov ecx, dword [esi + 0x68]
push ebx
push str._HTTP__3d
push ecx
call fcn.00486cbf
add esp, 0xc
mov dword [edi], 0xa
test eax, eax
jne 0x45ea00
mov ebx, dword [esi + 0x68]
mov eax, dword [ebp + 8]
call fcn.0045cbc0
test eax, eax
je 0x45f505
mov dword [esi + 0x78], 0xc8
mov dword [edi], 0xa
jmp 0x45ea00
test ecx, 0x40000
je 0x45f505
lea ecx, [esi + 0x78]
push ecx
lea edi, [edx + 0x11c]
push edi
lea edx, [ebp - 0xc]
push edx
push str._RTSP__d._d__3d
push eax
call fcn.00486cbf
add esp, 0x14
cmp eax, 3
jne 0x45f505
mov eax, dword [ebp - 0xc]
lea eax, [eax + eax*4]
add eax, eax
add dword [edi], eax
mov edi, dword [ebp + 0xc]
add edi, 0x118
mov dword [edi], 0xb
mov ebx, dword [ebp + 8]
mov ecx, dword [esi + 0x78]
mov eax, dword [ebx + 0x8648]
mov dword [ebx + 0x86ac], ecx
mov edx, dword [edi]
mov dword [ebx + 0x86b4], edx
test eax, eax
je 0x45ea22
cmp eax, dword [edi]
jle 0x45ea2a
mov eax, dword [edi]
mov dword [ebx + 0x8648], eax
cmp dword [ebx + 0x2b8], 0
je 0x45ea93
mov eax, dword [esi + 0x78]
cmp eax, 0x190
jl 0x45ea93
mov ecx, dword [ebp + 0xc]
cmp eax, 0x191
jne 0x45ea50
cmp dword [ecx + 0x1b0], 0
jne 0x45ea96
cmp eax, 0x197
jne 0x45ea60
cmp dword [ecx + 0x1b4], 0
jne 0x45ea96
mov edx, dword [ebx + 0x8670]
or edx, dword [ebx + 0x8674]
je 0x45ea7e
cmp dword [ebx + 0x218], 1
jne 0x45ea7e
cmp eax, 0x1a0
je 0x45ea96
push ebx
call fcn.0045ccf0
add esp, 4
pop edi
pop esi
mov eax, 0x16
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp + 0xc]
mov edi, dword [edi]
cmp edi, 0xa
jne 0x45eaba
push str.HTTP_1.0__assume_close_after_body_n
push ebx
call fcn.004566f0
mov eax, dword [ebp + 0xc]
add esp, 8
mov dword [eax + 0x1a0], 1
jmp 0x45ead2
cmp edi, 0xb
jl 0x45ead2
cmp dword [ecx + 0x1a0], 0
jne 0x45ead2
mov dword [ecx + 0x25c], 1
mov eax, dword [esi + 0x78]
sub eax, 0xcc
je 0x45eae1
sub eax, 0x64
jne 0x45eb0a
xor eax, eax
cmp dword [ebx + 0x208], eax
je 0x45eaf5
mov dword [ebx + 0x86bc], 1
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], eax
mov dword [esi + 0xb4], 1
cmp dword [esi + 0xb4], 0
mov edi, dword [ebp + 8]
jne 0x45ec36
cmp dword [edi + 0x318], 0
jne 0x45ec36
mov ecx, dword [esi + 0x68]
push 0xf
push ecx
push str.Content_Length:
call fcn.0045f9b0
add esp, 0xc
test eax, eax
je 0x45ec36
mov edx, dword [esi + 0x68]
push 0xa
add edx, 0xf
push 0
push edx
call fcn.00487163
mov ebx, dword [edi + 0x280]
mov ecx, dword [edi + 0x284]
add esp, 0xc
or ebx, ecx
je 0x45eb7b
cmp edx, ecx
jg 0x45f515
jl 0x45eb7b
cmp eax, dword [edi + 0x280]
ja 0x45f515
test edx, edx
jl 0x45ec14
jg 0x45eb8d
test eax, eax
jb 0x45ec14
push edx
push eax
push edi
mov dword [esi], eax
mov dword [esi + 4], edx
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], edx
call fcn.00461a50
add esp, 0xc
mov ebx, dword [ebp + 0xc]
cmp dword [edi + 0x2c8], 0
mov dword [ebp - 4], 2
je 0x45ebbd
mov dword [ebp - 4], 3
cmp dword [edi + 0x2e4], 0
je 0x45ebda
mov ecx, dword [esi + 0x58]
mov edx, dword [esi + 0x68]
push ebx
push ecx
push edx
push 1
push edi
call fcn.00456610
add esp, 0x14
mov eax, dword [esi + 0x58]
mov ecx, dword [esi + 0x68]
mov edx, dword [ebp - 4]
push eax
push ecx
push edx
push ebx
call fcn.00456970
add esp, 0x10
test eax, eax
jne 0x45f5ed
mov eax, dword [esi + 0x58]
add dword [edi + 0x86c0], eax
mov ecx, dword [esi + 0x58]
mov edx, dword [edi + 0x558]
add dword [edi + 0x48], ecx
mov dword [esi + 0x54], edx
jmp 0x45f45a
mov ebx, dword [ebp + 0xc]
push edx
push eax
push str.Negative_content_length:__lld__closing_after_transfer_n
push edi
mov dword [ebx + 0x1a0], 1
call fcn.004566f0
add esp, 0x10
jmp 0x45eba6
mov eax, dword [esi + 0x68]
push 0xd
push eax
push str.Content_Type:
call fcn.0045f9b0
add esp, 0xc
test eax, eax
je 0x45ec9c
mov eax, dword [esi + 0x68]
call fcn.0045be40
mov ebx, eax
test ebx, ebx
je 0x45f52f
cmp byte [ebx], 0
jne 0x45ec73
push ebx
call dword [0x51f004]
add esp, 4
jmp 0x45eba3
mov eax, dword [edi + 0x86d4]
test eax, eax
je 0x45ec91
push eax
call dword [0x51f004]
add esp, 4
mov dword [edi + 0x86d4], 0
mov dword [edi + 0x86d4], ebx
jmp 0x45eba3
mov ebx, dword [ebp + 0xc]
cmp dword [ebx + 0x118], 0xa
jne 0x45ece8
cmp dword [ebx + 0x1ac], 0
je 0x45ece8
mov ecx, dword [esi + 0x68]
push str.keep_alive
push str.Proxy_Connection:
push ecx
call fcn.0045c920
add esp, 0xc
test eax, eax
je 0x45ece8
push str.HTTP_1.0_proxy_connection_set_to_keep_alive__n
push edi
mov dword [ebx + 0x1a0], 0
call fcn.004566f0
add esp, 8
jmp 0x45eba6
cmp dword [ebx + 0x118], 0xb
jne 0x45ed31
cmp dword [ebx + 0x1ac], 0
je 0x45ed31
mov edx, dword [esi + 0x68]
push str.close
push str.Proxy_Connection:
push edx
call fcn.0045c920
add esp, 0xc
test eax, eax
je 0x45ed31
push str.HTTP_1.1_proxy_connection_set_close__n
push edi
mov dword [ebx + 0x1a0], 1
call fcn.004566f0
add esp, 8
jmp 0x45eba6
cmp dword [ebx + 0x118], 0xa
jne 0x45ed71
mov eax, dword [esi + 0x68]
push str.keep_alive
push str.Connection:
push eax
call fcn.0045c920
add esp, 0xc
test eax, eax
je 0x45ed71
push str.HTTP_1.0_connection_set_to_keep_alive__n
push edi
mov dword [ebx + 0x1a0], 0
call fcn.004566f0
add esp, 8
jmp 0x45eba6
mov ecx, dword [esi + 0x68]
push str.close
push str.Connection:
push ecx
call fcn.0045c920
add esp, 0xc
test eax, eax
je 0x45ed9a
mov dword [ebx + 0x1a0], 1
jmp 0x45eba6
mov edx, dword [esi + 0x68]
push 0x12
push edx
push str.Transfer_Encoding:
call fcn.0045f9b0
add esp, 0xc
test eax, eax
je 0x45ef05
mov ebx, dword [esi + 0x68]
add ebx, 0x12
jmp 0x45edc0
mov al, byte [ebx]
test al, al
je 0x45ede3
movzx eax, al
push eax
call fcn.00482c10
add esp, 4
test eax, eax
jne 0x45eddb
cmp byte [ebx], 0x2c
jne 0x45ede3
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x45edc6
push 7
push ebx
push str.chunked
call fcn.0045f9b0
add esp, 0xc
test eax, eax
je 0x45ee10
mov ecx, dword [ebp + 0xc]
push ecx
mov dword [esi + 0xc8], 1
call fcn.004666f0
add esp, 4
add ebx, 7
cmp dword [esi + 0x88], 0
jne 0x45eba3
push 8
push ebx
push str.identity
call fcn.0045f9b0
add esp, 0xc
test eax, eax
je 0x45ee43
mov dword [esi + 0x88], 0
add ebx, 8
jmp 0x45edc0
push 7
push ebx
push str.deflate
call fcn.0045f9b0
add esp, 0xc
test eax, eax
je 0x45ee69
mov dword [esi + 0x88], 1
add ebx, 7
jmp 0x45edc0
push 4
push ebx
push str.gzip
call fcn.0045f9b0
add esp, 0xc
test eax, eax
je 0x45ee8f
mov dword [esi + 0x88], 2
add ebx, 4
jmp 0x45edc0
push 6
push ebx
push str.x_gzip
call fcn.0045f9b0
add esp, 0xc
test eax, eax
je 0x45eeb5
mov dword [esi + 0x88], 2
add ebx, 6
jmp 0x45edc0
push 8
push ebx
push str.compress
call fcn.0045f9b0
add esp, 0xc
test eax, eax
je 0x45eedb
mov dword [esi + 0x88], 3
add ebx, 8
jmp 0x45edc0
push 0xa
push ebx
push str.x_compress
call fcn.0045f9b0
add esp, 0xc
test eax, eax
je 0x45eba3
mov dword [esi + 0x88], 3
add ebx, 0xa
jmp 0x45edc0
mov edx, dword [esi + 0x68]
push 0x11
push edx
push str.Content_Encoding:
call fcn.0045f9b0
add esp, 0xc
test eax, eax
je 0x45f010
cmp dword [edi + 0x358], 0
je 0x45f010
mov ebx, dword [esi + 0x68]
mov al, byte [ebx + 0x11]
add ebx, 0x11
test al, al
je 0x45ef58
lea ebx, [ebx]
movzx eax, al
push eax
call fcn.00482c10
add esp, 4
test eax, eax
je 0x45ef58
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x45ef40
push 8
push ebx
push str.identity
call fcn.0045f9b0
add esp, 0xc
test eax, eax
je 0x45ef7b
mov dword [esi + 0x88], 0
jmp 0x45eba3
push 7
push ebx
push str.deflate
call fcn.0045f9b0
add esp, 0xc
test eax, eax
je 0x45ef9e
mov dword [esi + 0x88], 1
jmp 0x45eba3
push 4
push ebx
push str.gzip
call fcn.0045f9b0
add esp, 0xc
test eax, eax
jne 0x45f001
push 6
push ebx
push str.x_gzip
call fcn.0045f9b0
add esp, 0xc
test eax, eax
jne 0x45f001
push 8
push ebx
push str.compress
call fcn.0045f9b0
add esp, 0xc
test eax, eax
jne 0x45eff2
push 0xa
push ebx
push str.x_compress
call fcn.0045f9b0
add esp, 0xc
test eax, eax
je 0x45eba3
mov dword [esi + 0x88], 3
jmp 0x45eba3
mov dword [esi + 0x88], 2
jmp 0x45eba3
mov ecx, dword [esi + 0x68]
push 0xe
push ecx
push str.Content_Range:
call fcn.0045f9b0
add esp, 0xc
test eax, eax
je 0x45f086
mov ebx, dword [esi + 0x68]
mov al, byte [ebx + 0xe]
add ebx, 0xe
test al, al
je 0x45f04c
movzx edx, al
push edx
call fcn.00482b0b
add esp, 4
test eax, eax
jne 0x45f04c
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x45f034
push 0xa
push 0
push ebx
call fcn.00487163
mov dword [esi + 0x70], eax
mov dword [esi + 0x74], edx
mov eax, dword [edi + 0x8670]
add esp, 0xc
cmp eax, dword [esi + 0x70]
jne 0x45eba3
cmp dword [edi + 0x8674], edx
jne 0x45eba3
mov dword [esi + 0x6c], 1
jmp 0x45eba3
cmp dword [edi + 0x430], 0
je 0x45f0f1
mov edx, dword [esi + 0x68]
push 0xb
push edx
push str.Set_Cookie:
call fcn.0045f9b0
add esp, 0xc
test eax, eax
je 0x45f0f1
push 2
push 2
push edi
call fcn.0045bd50
mov eax, dword [ebx + 0x244]
add esp, 0xc
test eax, eax
jne 0x45f0c3
mov eax, dword [ebx + 0x80]
mov ecx, dword [edi + 0x8658]
mov edx, dword [esi + 0x68]
push ecx
push eax
mov eax, dword [edi + 0x430]
add edx, 0xb
push edx
push 1
push eax
push edi
call fcn.00457170
push 2
push edi
call fcn.0045bd90
add esp, 0x20
jmp 0x45eba6
mov ecx, dword [esi + 0x68]
push 0xe
push ecx
push str.Last_Modified:
call fcn.0045f9b0
add esp, 0xc
test eax, eax
je 0x45f160
cmp dword [edi + 0x208], 0
jne 0x45f11a
cmp dword [edi + 0x29c], 0
je 0x45f160
push 0
call fcn.0048262f
mov dword [ebp - 0x14], eax
mov eax, dword [esi + 0x68]
mov dword [ebp - 0x10], edx
lea edx, [ebp - 0x14]
push edx
add eax, 0xe
push eax
call fcn.00465980
add esp, 0xc
mov dword [esi + 0x90], eax
mov dword [esi + 0x94], edx
cmp dword [edi + 0x29c], 0
je 0x45eba6
mov ecx, eax
mov dword [edi + 0x86b8], ecx
jmp 0x45eba6
mov edx, dword [esi + 0x68]
push 0x11
push edx
push str.WWW_Authenticate:
call fcn.0045f9b0
add esp, 0xc
test eax, eax
je 0x45f181
mov eax, dword [esi + 0x78]
cmp eax, 0x191
je 0x45f1a2
mov eax, dword [esi + 0x68]
push 0x13
push eax
push str.Proxy_authenticate:
call fcn.0045f9b0
add esp, 0xc
test eax, eax
je 0x45f1bd
mov eax, dword [esi + 0x78]
cmp eax, 0x197
jne 0x45f1bd
mov ecx, dword [esi + 0x68]
push ecx
push eax
push ebx
call fcn.0045c420
add esp, 0xc
test eax, eax
jne 0x45f5ed
jmp 0x45eba6
mov eax, dword [esi + 0x78]
cmp eax, 0x12c
jl 0x45f25b
cmp eax, 0x190
jge 0x45f25b
mov edx, dword [esi + 0x68]
push 9
push edx
push str.Location:
call fcn.0045f9b0
add esp, 0xc
test eax, eax
je 0x45f25b
cmp dword [edi + 0xd0], 0
jne 0x45f25b
mov eax, dword [esi + 0x68]
call fcn.0045be40
test eax, eax
je 0x45f52f
cmp byte [eax], 0
jne 0x45f21a
push eax
call dword [0x51f004]
add esp, 4
jmp 0x45eba6
cmp dword [edi + 0x2bc], 0
mov dword [edi + 0xd0], eax
je 0x45eba6
push eax
call dword [0x51f00c]
add esp, 4
mov dword [edi + 0xd4], eax
test eax, eax
je 0x45f52f
push ebx
call fcn.0045c080
add esp, 4
test eax, eax
jne 0x45f5ed
jmp 0x45eba6
mov eax, dword [ebx + 0x214]
test dword [eax + 0x3c], 0x40000
je 0x45eba6
pop edi
pop esi
mov eax, 4
pop ebx
mov esp, ebp
pop ebp
ret
cmp cl, 0xd
jne 0x45f283
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x68]
cmp byte [eax], 0xa
jne 0x45f28f
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x78]
cmp eax, 0x64
jl 0x45f2c4
cmp eax, 0xc7
jg 0x45f2c4
mov ebx, dword [ebp + 0xc]
xor eax, eax
mov dword [esi + 0x48], 1
mov dword [esi + 0x50], eax
cmp dword [esi + 0x84], eax
je 0x45f328
or dword [esi + 0xa8], 2
mov dword [esi + 0x84], eax
jmp 0x45f328
mov eax, dword [esi]
and eax, dword [esi + 4]
mov dword [esi + 0x48], 0
cmp eax, 0xffffffff
jne 0x45f325
cmp dword [esi + 0xc8], 0
jne 0x45f325
mov ebx, dword [ebp + 0xc]
cmp dword [ebx + 0x1a0], 0
jne 0x45f328
cmp dword [ebx + 0x118], 0xb
jl 0x45f328
mov ecx, dword [ebx + 0x214]
test dword [ecx + 0x3c], 0x40000
jne 0x45f328
cmp dword [edi + 0x218], 5
je 0x45f328
push str.no_chunk__no_close__no_size._Assume_close_to_signal_end_n
push edi
call fcn.004566f0
add esp, 8
mov dword [ebx + 0x1a0], 1
jmp 0x45f328
mov ebx, dword [ebp + 0xc]
mov edx, ebx
call fcn.0045c530
test eax, eax
jne 0x45f53b
lea ecx, [eax + 2]
cmp dword [edi + 0x2c8], eax
je 0x45f345
lea ecx, [eax + 3]
mov eax, dword [edi + 0x558]
mov ebx, dword [esi + 0x68]
mov edx, dword [ebp + 0xc]
sub ebx, eax
push ebx
push eax
push ecx
push edx
call fcn.00456970
add esp, 0x10
test eax, eax
jne 0x45f5ed
add dword [edi + 0x48], ebx
add dword [edi + 0x86c0], ebx
mov eax, dword [esi + 0x78]
mov ecx, dword [edi + 0x48]
cmp eax, 0x64
jl 0x45f386
cmp eax, 0xc7
jg 0x45f386
mov eax, ecx
jmp 0x45f388
xor eax, eax
mov dword [edi + 0x4c], eax
mov eax, dword [ebp + 0x14]
cmp dword [eax], 0
jne 0x45f447
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.0045cd90
add esp, 4
test eax, eax
jne 0x45f5ed
cmp dword [esi + 0x78], 0x12c
jl 0x45f426
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 0x1d8], eax
jne 0x45f429
cmp dword [ecx + 0x1a0], eax
jne 0x45f429
cmp dword [ecx + 0x1dc], eax
jne 0x45f432
mov eax, dword [edi + 0x218]
add eax, 0xfffffffe
cmp eax, 2
ja 0x45f429
cmp dword [esi + 0xac], 0
jne 0x45f429
push str.HTTP_error_before_end_of_send__stop_sending_n
push edi
call fcn.004566f0
mov edx, dword [ebp + 0xc]
mov eax, 1
mov dword [edx + 0x1a0], eax
and dword [esi + 0xa8], 0xfffffffd
add esp, 8
mov dword [esi + 0xac], eax
cmp dword [edi + 0x864c], 0
je 0x45f426
mov dword [esi + 0x84], 3
mov ecx, edx
jmp 0x45f429
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 0x1dc], 0
je 0x45f447
push str.Keep_sending_data_to_get_tossed_away__n
push edi
call fcn.004566f0
add esp, 8
or dword [esi + 0xa8], 2
cmp dword [esi + 0x48], 0
je 0x45f559
mov eax, dword [edi + 0x558]
mov dword [esi + 0x54], eax
mov ecx, dword [ebp + 0x14]
mov dword [esi + 0x58], 0
cmp dword [ecx], 0
jne 0x45f5eb
mov edx, dword [esi + 0x5c]
cmp byte [edx], 0
jne 0x45e890
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax]
push ecx
call fcn.0045cc30
add esp, 4
test eax, eax
jne 0x45f5ed
cmp dword [esi + 0x50], eax
jne 0x45f5eb
cmp dword [esi + 0x58], 5
jbe 0x45f5eb
mov ebx, dword [edi + 0x558]
mov eax, edi
call fcn.0045cc20
test eax, eax
jne 0x45f5eb
pop edi
mov dword [esi + 0x48], eax
mov dword [esi + 0x4c], 2
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x48], 0
cmp dword [eax], 0
je 0x45f4f0
pop edi
mov dword [esi + 0x4c], 1
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 4]
pop edi
mov dword [esi + 0x4c], 2
pop esi
mov dword [eax], edx
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
mov dword [esi + 0x48], 0
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
push str.Maximum_file_size_exceeded
push edi
call fcn.00456770
add esp, 8
pop edi
pop esi
mov eax, 0x3f
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x1b
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 0x78]
push eax
push str.The_requested_URL_returned_error:__d
push edi
call fcn.00456770
add esp, 0xc
pop edi
pop esi
mov eax, 0x16
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x2d4], 0
je 0x45f56d
mov ecx, dword [ebp + 0x14]
mov dword [ecx], 1
jmp 0x45f584
cmp dword [esi + 0xc8], 0
je 0x45f584
or eax, 0xffffffff
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], eax
mov eax, dword [esi]
mov ecx, dword [esi + 4]
cmp eax, 0xffffffff
jne 0x45f592
cmp ecx, eax
je 0x45f5a8
push ecx
push eax
push edi
call fcn.00461a50
mov edx, dword [esi]
mov eax, dword [esi + 4]
add esp, 0xc
mov dword [esi + 0x10], edx
mov dword [esi + 0x14], eax
cmp dword [esi + 0x10], 0
jne 0x45f5bf
cmp dword [esi + 0x14], 0
jne 0x45f5bf
mov ecx, dword [ebp + 0x14]
mov dword [ecx], 1
jmp 0x45f5c7
mov edx, dword [ebp + 0x14]
cmp dword [edx], 0
je 0x45f5ce
and dword [esi + 0xa8], 0xfffffffe
cmp dword [edi + 0x2e4], 0
je 0x45f5eb
mov eax, dword [ebp + 0xc]
mov ecx, dword [esi + 0x60]
push eax
push ebx
push ecx
push 1
push edi
call fcn.00456610
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret