Function at 0x45e080
Capabilities:
Check http status code
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x10
push ebx
push ebp
mov ebp, dword [esp + 0x1c]
push esi
push edi
lea esi, [ebp + 0x18]
mov edi, edi
mov eax, dword [esi + 0x5c]
mov edi, dword [esp + 0x2c]
mov dword [esi + 0x60], eax
mov ecx, dword [edi]
push ecx
push 0xa
push eax
call fcn.004200b0
add esp, 0xc
mov dword [esi + 0x64], eax
mov ebx, ebp
test eax, eax
je 0x45ec63
sub eax, dword [esi + 0x5c]
inc eax
mov edi, eax
mov eax, dword [esp + 0x2c]
sub dword [eax], edi
mov eax, dword [esi + 0x64]
inc eax
mov dword [esi + 0x5c], eax
sub eax, dword [esi + 0x60]
push eax
call fcn.0045c470
add esp, 4
test eax, eax
jne 0x45edd6
mov edx, dword [esi + 0x54]
mov dword [esi + 0x64], edx
mov eax, dword [ebp + 0x534]
xor edx, edx
mov dword [esi + 0x68], eax
cmp dword [esi + 0x50], edx
jne 0x45e18c
cmp dword [esi + 0x58], 5
jbe 0x45e18c
mov ebx, dword [esp + 0x28]
mov eax, dword [ebp + 0x534]
push ebp
mov ecx, ebx
call fcn.0045c440
add esp, 4
test eax, eax
je 0x45ecb6
xor edx, edx
mov eax, dword [esi + 0x68]
mov cl, byte [eax]
cmp cl, 0xa
je 0x45ea87
cmp cl, 0xd
je 0x45ea8c
mov ecx, dword [esi + 0x50]
lea edi, [ecx + 1]
mov dword [esi + 0x50], edi
cmp ecx, edx
jne 0x45e338
mov ecx, dword [ebx + 0x230]
mov ecx, dword [ecx + 0x3c]
test cl, 1
je 0x45e1d1
mov edi, dword [esp + 0x28]
lea ebp, [esi + 0x78]
push ebp
add edi, 0x118
push edi
lea edx, [esp + 0x18]
push edx
push str._HTTP__d._d__3d
push eax
call fcn.004204ea
add esp, 0x14
cmp eax, 3
jne 0x45e192
mov eax, dword [esp + 0x10]
lea eax, [eax + eax*4]
add eax, eax
add dword [edi], eax
jmp 0x45e21f
mov ebx, dword [esp + 0x28]
jmp 0x45e11f
mov ecx, dword [esi + 0x68]
push ebp
push str._HTTP__3d
push ecx
call fcn.004204ea
add esp, 0xc
mov dword [edi], 0xa
test eax, eax
jne 0x45e21f
mov ebx, dword [esi + 0x68]
mov eax, dword [esp + 0x24]
call fcn.0045c3c0
test eax, eax
je 0x45ecea
mov dword [ebp], 0xc8
mov dword [edi], 0xa
jmp 0x45e21f
test ecx, 0x40000
je 0x45ecea
lea ebp, [esi + 0x78]
push ebp
lea edi, [ebx + 0x11c]
push edi
lea edx, [esp + 0x1c]
push edx
push str._RTSP__d._d__3d
push eax
call fcn.004204ea
add esp, 0x14
cmp eax, 3
jne 0x45ecea
mov eax, dword [esp + 0x14]
lea eax, [eax + eax*4]
add eax, eax
add dword [edi], eax
mov edi, dword [esp + 0x28]
add edi, 0x118
mov dword [edi], 0xb
mov ebx, dword [esp + 0x24]
mov ecx, dword [ebp]
mov eax, dword [ebx + 0x8620]
mov dword [ebx + 0x868c], ecx
mov edx, dword [edi]
mov dword [ebx + 0x8694], edx
test eax, eax
je 0x45e242
cmp eax, dword [edi]
jle 0x45e24a
mov eax, dword [edi]
mov dword [ebx + 0x8620], eax
cmp dword [ebx + 0x2b8], 0
je 0x45e2be
mov eax, dword [ebp]
cmp eax, 0x190
jl 0x45e2be
mov ecx, dword [esp + 0x28]
cmp eax, 0x191
jne 0x45e271
cmp dword [ecx + 0x1c8], 0
jne 0x45e2c2
cmp eax, 0x197
jne 0x45e281
cmp dword [ecx + 0x1cc], 0
jne 0x45e2c2
mov edx, dword [ebx + 0x8650]
or edx, dword [ebx + 0x8654]
je 0x45e29f
cmp dword [ebx + 0x218], 1
jne 0x45e29f
cmp eax, 0x1a0
je 0x45e2c2
mov ecx, dword [esi + 0x78]
push ecx
push str.The_requested_URL_returned_error:__d
push ebx
call fcn.004447b0
add esp, 0xc
pop edi
pop esi
pop ebp
mov eax, 0x16
pop ebx
add esp, 0x10
ret
mov ecx, dword [esp + 0x28]
mov edi, dword [edi]
cmp edi, 0xa
jne 0x45e2e7
push str.HTTP_1.0__assume_close_after_body_n
push ebx
call fcn.00444720
mov eax, dword [esp + 0x30]
add esp, 8
mov dword [eax + 0x1b8], 1
jmp 0x45e2ff
cmp edi, 0xb
jl 0x45e2ff
cmp dword [ecx + 0x1b8], 0
jne 0x45e2ff
mov dword [ecx + 0x278], 1
mov ebp, dword [ebp]
sub ebp, 0xcc
je 0x45e30f
sub ebp, 0x64
jne 0x45e338
xor eax, eax
cmp dword [ebx + 0x208], eax
je 0x45e323
mov dword [ebx + 0x869c], 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 [esp + 0x24]
jne 0x45e3ec
cmp dword [edi + 0x318], 0
jne 0x45e3ec
mov ecx, dword [esi + 0x68]
push 0xf
push ecx
push str.Content_Length:
call fcn.0044b670
add esp, 0xc
test eax, eax
je 0x45e3ec
mov edx, dword [esi + 0x68]
push 0xa
add edx, 0xf
push 0
push edx
call fcn.0042d6b6
mov ebx, dword [edi + 0x280]
mov ecx, dword [edi + 0x284]
mov ebp, ebx
add esp, 0xc
or ebp, ecx
je 0x45e3a4
cmp edx, ecx
jg 0x45ecfb
jl 0x45e3a4
cmp eax, ebx
ja 0x45ecfb
test edx, edx
jl 0x45e3c9
jg 0x45e3ae
test eax, eax
jb 0x45e3c9
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.0044eaf0
add esp, 0xc
jmp 0x45ea14
mov ecx, dword [esp + 0x28]
push edx
push eax
push str.Negative_content_length:__lld__closing_after_transfer_n
push edi
mov dword [ecx + 0x1b8], 1
call fcn.00444720
add esp, 0x10
jmp 0x45ea14
mov edx, dword [esi + 0x68]
push 0xd
push edx
push str.Content_Type:
call fcn.0044b670
add esp, 0xc
test eax, eax
je 0x45e452
mov eax, dword [esi + 0x68]
call fcn.0045b540
mov ebx, eax
test ebx, ebx
je 0x45ed16
cmp byte [ebx], 0
jne 0x45e429
push ebx
call dword [0x553dcc]
add esp, 4
jmp 0x45ea14
mov eax, dword [edi + 0x86b4]
test eax, eax
je 0x45e447
push eax
call dword [0x553dcc]
add esp, 4
mov dword [edi + 0x86b4], 0
mov dword [edi + 0x86b4], ebx
jmp 0x45ea14
mov ebx, dword [esp + 0x28]
mov ebp, 0xa
cmp dword [ebx + 0x118], ebp
jne 0x45e4a3
cmp dword [ebx + 0x1c4], 0
je 0x45e4a3
mov eax, dword [esi + 0x68]
push str.keep_alive
push str.Proxy_Connection:
push eax
call fcn.0045c0f0
add esp, 0xc
test eax, eax
je 0x45e4a3
push str.HTTP_1.0_proxy_connection_set_to_keep_alive__n
push edi
mov dword [ebx + 0x1b8], 0
call fcn.00444720
add esp, 8
jmp 0x45ea14
cmp dword [ebx + 0x118], 0xb
jne 0x45e4ec
cmp dword [ebx + 0x1c4], 0
je 0x45e4ec
mov ecx, dword [esi + 0x68]
push str.close
push str.Proxy_Connection:
push ecx
call fcn.0045c0f0
add esp, 0xc
test eax, eax
je 0x45e4ec
push str.HTTP_1.1_proxy_connection_set_close__n
push edi
mov dword [ebx + 0x1b8], 1
call fcn.00444720
add esp, 8
jmp 0x45ea14
cmp dword [ebx + 0x118], ebp
jne 0x45e52b
mov edx, dword [esi + 0x68]
push str.keep_alive
push str.Connection:
push edx
call fcn.0045c0f0
add esp, 0xc
test eax, eax
je 0x45e52b
push str.HTTP_1.0_connection_set_to_keep_alive__n
push edi
mov dword [ebx + 0x1b8], 0
call fcn.00444720
add esp, 8
jmp 0x45ea14
mov eax, dword [esi + 0x68]
push str.close
push str.Connection:
push eax
call fcn.0045c0f0
add esp, 0xc
test eax, eax
je 0x45e554
mov dword [ebx + 0x1b8], 1
jmp 0x45ea14
mov ecx, dword [esi + 0x68]
push 0x12
push ecx
push str.Transfer_Encoding:
call fcn.0044b670
add esp, 0xc
test eax, eax
je 0x45e6bc
mov edi, dword [esi + 0x68]
add edi, 0x12
mov al, byte [edi]
test al, al
je 0x45e59d
jmp 0x45e580
movzx edx, al
push edx
call fcn.00421423
add esp, 4
test eax, eax
jne 0x45e595
cmp byte [edi], 0x2c
jne 0x45e59d
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x45e580
push 7
push edi
push str.chunked
call fcn.0044b670
add esp, 0xc
test eax, eax
je 0x45e5c9
mov eax, ebx
push eax
mov dword [esi + 0xc8], 1
call fcn.00461530
add esp, 4
add edi, 7
cmp dword [esi + 0x88], 0
jne 0x45ea14
push 8
push edi
push str.identity
call fcn.0044b670
add esp, 0xc
test eax, eax
je 0x45e5fc
mov dword [esi + 0x88], 0
add edi, 8
jmp 0x45e575
push 7
push edi
push str.deflate
call fcn.0044b670
add esp, 0xc
test eax, eax
je 0x45e622
mov dword [esi + 0x88], 1
add edi, 7
jmp 0x45e575
push 4
push edi
push str.gzip
call fcn.0044b670
add esp, 0xc
test eax, eax
je 0x45e648
mov dword [esi + 0x88], 2
add edi, 4
jmp 0x45e575
push 6
push edi
push str.x_gzip
call fcn.0044b670
add esp, 0xc
test eax, eax
je 0x45e66e
mov dword [esi + 0x88], 2
add edi, 6
jmp 0x45e575
push 8
push edi
push str.compress
call fcn.0044b670
add esp, 0xc
test eax, eax
je 0x45e694
mov dword [esi + 0x88], 3
add edi, 8
jmp 0x45e575
push ebp
push edi
push str.x_compress
call fcn.0044b670
add esp, 0xc
test eax, eax
je 0x45ea14
mov dword [esi + 0x88], 3
add edi, ebp
jmp 0x45e575
mov ecx, dword [esi + 0x68]
push 0x11
push ecx
push str.Content_Encoding:
call fcn.0044b670
add esp, 0xc
test eax, eax
je 0x45e7c0
cmp dword [edi + 0x354], 0
je 0x45e7c0
mov edi, dword [esi + 0x68]
mov al, byte [edi + 0x11]
add edi, 0x11
test al, al
je 0x45e709
movzx edx, al
push edx
call fcn.00421423
add esp, 4
test eax, eax
je 0x45e709
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x45e6f1
push 8
push edi
push str.identity
call fcn.0044b670
add esp, 0xc
test eax, eax
je 0x45e72c
mov dword [esi + 0x88], 0
jmp 0x45ea14
push 7
push edi
push str.deflate
call fcn.0044b670
add esp, 0xc
test eax, eax
je 0x45e74f
mov dword [esi + 0x88], 1
jmp 0x45ea14
push 4
push edi
push str.gzip
call fcn.0044b670
add esp, 0xc
test eax, eax
jne 0x45e7b1
push 6
push edi
push str.x_gzip
call fcn.0044b670
add esp, 0xc
test eax, eax
jne 0x45e7b1
push 8
push edi
push str.compress
call fcn.0044b670
add esp, 0xc
test eax, eax
jne 0x45e7a2
push ebp
push edi
push str.x_compress
call fcn.0044b670
add esp, 0xc
test eax, eax
je 0x45ea14
mov dword [esi + 0x88], 3
jmp 0x45ea14
mov dword [esi + 0x88], 2
jmp 0x45ea14
mov eax, dword [esi + 0x68]
push 0xe
push eax
push str.Content_Range:
call fcn.0044b670
add esp, 0xc
test eax, eax
je 0x45e83e
mov edi, dword [esi + 0x68]
mov al, byte [edi + 0xe]
add edi, 0xe
test al, al
je 0x45e7fc
movzx ecx, al
push ecx
call fcn.0042132c
add esp, 4
test eax, eax
jne 0x45e7fc
mov al, byte [edi + 1]
inc edi
test al, al
jne 0x45e7e4
push ebp
push 0
push edi
call fcn.0042d6b6
mov dword [esi + 0x74], edx
mov edx, dword [esp + 0x30]
mov dword [esi + 0x70], eax
mov eax, dword [edx + 0x8650]
add esp, 0xc
cmp eax, dword [esi + 0x70]
jne 0x45ea14
mov ecx, edx
mov edx, dword [ecx + 0x8654]
cmp edx, dword [esi + 0x74]
jne 0x45ea14
mov dword [esi + 0x6c], 1
jmp 0x45ea14
cmp dword [edi + 0x418], 0
je 0x45e8a9
mov eax, dword [esi + 0x68]
push 0xb
push eax
push str.Set_Cookie:
call fcn.0044b670
add esp, 0xc
test eax, eax
je 0x45e8a9
push 2
push 2
push edi
call fcn.0044f520
mov eax, dword [ebx + 0x260]
add esp, 0xc
test eax, eax
jne 0x45e87b
mov eax, dword [ebx + 0x80]
mov ecx, dword [edi + 0x8638]
mov edx, dword [esi + 0x68]
push ecx
push eax
mov eax, dword [edi + 0x418]
add edx, 0xb
push edx
push 1
push eax
push edi
call fcn.004432a0
push 2
push edi
call fcn.0044f560
add esp, 0x20
jmp 0x45ea14
mov ecx, dword [esi + 0x68]
push 0xe
push ecx
push str.Last_Modified:
call fcn.0044b670
add esp, 0xc
test eax, eax
je 0x45e91b
cmp dword [edi + 0x208], 0
jne 0x45e8d2
cmp dword [edi + 0x29c], 0
je 0x45e91b
push 0
call fcn.00420446
mov dword [esp + 0x1c], eax
mov eax, dword [esi + 0x68]
mov dword [esp + 0x20], edx
lea edx, [esp + 0x1c]
push edx
add eax, 0xe
push eax
call sym.SCSkinInst.exe_curl_getdate
add esp, 0xc
mov dword [esi + 0x90], eax
mov dword [esi + 0x94], edx
cmp dword [edi + 0x29c], 0
je 0x45ea14
mov ecx, eax
mov dword [edi + 0x8698], ecx
jmp 0x45ea14
mov edx, dword [esi + 0x68]
push 0x11
push edx
push str.WWW_Authenticate:
call fcn.0044b670
add esp, 0xc
test eax, eax
je 0x45e93c
mov eax, dword [esi + 0x78]
cmp eax, 0x191
je 0x45e95d
mov eax, dword [esi + 0x68]
push 0x13
push eax
push str.Proxy_authenticate:
call fcn.0044b670
add esp, 0xc
test eax, eax
je 0x45e970
mov eax, dword [esi + 0x78]
cmp eax, 0x197
jne 0x45e970
mov ecx, dword [esi + 0x68]
push ecx
push eax
push ebx
call fcn.0045bb50
add esp, 0xc
jmp 0x45ea0c
mov eax, dword [esi + 0x78]
cmp eax, 0x12c
jl 0x45e9f0
cmp eax, 0x190
jge 0x45e9f0
mov edx, dword [esi + 0x68]
push 9
push edx
push str.Location:
call fcn.0044b670
add esp, 0xc
test eax, eax
je 0x45e9f0
cmp dword [edi + 0xd0], 0
jne 0x45e9f0
mov eax, dword [esi + 0x68]
call fcn.0045b540
test eax, eax
je 0x45ed16
cmp byte [eax], 0
jne 0x45e9c2
push eax
call dword [0x553dcc]
add esp, 4
jmp 0x45ea14
cmp dword [edi + 0x2bc], 0
mov dword [edi + 0xd0], eax
je 0x45ea14
push eax
call dword [0x553dd4]
add esp, 4
mov dword [edi + 0xd4], eax
test eax, eax
je 0x45ed16
call fcn.0045b790
jmp 0x45ea0c
mov eax, dword [ebx + 0x230]
test dword [eax + 0x3c], 0x40000
je 0x45ea14
mov ecx, dword [esi + 0x68]
push ecx
push ebx
call fcn.00450250
add esp, 8
test eax, eax
jne 0x45edd6
mov ebp, dword [esp + 0x24]
cmp dword [ebp + 0x2c8], 0
mov edi, 2
je 0x45ea2b
mov edi, 3
cmp dword [ebp + 0x2e4], 0
je 0x45ea4c
mov edx, dword [esp + 0x28]
mov eax, dword [esi + 0x58]
mov ecx, dword [esi + 0x68]
push edx
push eax
push ecx
push 1
push ebp
call fcn.00444630
add esp, 0x14
mov edx, dword [esi + 0x58]
mov eax, dword [esi + 0x68]
mov ecx, dword [esp + 0x28]
push edx
push eax
push edi
push ecx
call fcn.00444a90
add esp, 0x10
test eax, eax
jne 0x45edd6
mov edx, dword [esi + 0x58]
add dword [ebp + 0x86a0], edx
mov eax, dword [esi + 0x58]
mov ecx, dword [ebp + 0x534]
add dword [ebp + 0x48], eax
mov dword [esi + 0x54], ecx
jmp 0x45ec39
cmp cl, 0xd
jne 0x45ea90
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x68]
cmp byte [eax], 0xa
jne 0x45ea9c
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x78]
cmp eax, 0x64
jl 0x45eacc
cmp eax, 0xc7
jg 0x45eacc
mov dword [esi + 0x48], 1
mov dword [esi + 0x50], edx
cmp dword [esi + 0x84], edx
je 0x45eb19
or dword [esi + 0xa8], 2
mov dword [esi + 0x84], edx
jmp 0x45eb19
mov eax, dword [esi]
and eax, dword [esi + 4]
mov dword [esi + 0x48], edx
cmp eax, 0xffffffff
jne 0x45eb19
cmp dword [esi + 0xc8], edx
jne 0x45eb19
cmp dword [ebx + 0x1b8], edx
jne 0x45eb19
cmp dword [ebx + 0x118], 0xb
jl 0x45eb19
mov ecx, dword [ebx + 0x230]
test dword [ecx + 0x3c], 0x40000
jne 0x45eb19
push str.no_chunk__no_close__no_size._Assume_close_to_signal_end_n
push ebp
call fcn.00444720
add esp, 8
mov dword [ebx + 0x1b8], 1
mov edx, ebx
call fcn.0045bd00
test eax, eax
jne 0x45ed23
lea ecx, [eax + 2]
cmp dword [ebp + 0x2c8], eax
je 0x45eb36
lea ecx, [eax + 3]
mov eax, dword [ebp + 0x534]
mov edi, dword [esi + 0x68]
sub edi, eax
push edi
push eax
push ecx
push ebx
call fcn.00444a90
add esp, 0x10
test eax, eax
jne 0x45edd6
add dword [ebp + 0x48], edi
add dword [ebp + 0x86a0], edi
mov eax, dword [esi + 0x78]
cmp eax, 0x64
mov ecx, dword [ebp + 0x48]
jl 0x45eb74
cmp eax, 0xc7
jg 0x45eb74
mov eax, ecx
jmp 0x45eb76
xor eax, eax
mov edx, dword [esp + 0x30]
mov dword [ebp + 0x4c], eax
cmp dword [edx], 0
jne 0x45ec26
push ebx
call fcn.0045c520
add esp, 4
test eax, eax
jne 0x45edd6
cmp dword [esi + 0x78], 0x12c
jl 0x45ec08
cmp dword [ebx + 0x1f4], eax
jne 0x45ec08
cmp dword [ebx + 0x1b8], eax
jne 0x45ec08
cmp dword [ebx + 0x1f8], eax
jne 0x45ec11
mov eax, dword [ebp + 0x218]
add eax, 0xfffffffe
cmp eax, 2
ja 0x45ec08
cmp dword [esi + 0xac], 0
jne 0x45ec08
push str.HTTP_error_before_end_of_send__stop_sending_n
push ebp
call fcn.00444720
mov eax, 1
mov dword [ebx + 0x1b8], eax
and dword [esi + 0xa8], 0xfffffffd
add esp, 8
mov dword [esi + 0xac], eax
cmp dword [ebp + 0x8624], 0
je 0x45ec08
mov dword [esi + 0x84], 3
cmp dword [ebx + 0x1f8], 0
je 0x45ec26
push str.Keep_sending_data_to_get_tossed_away__n
push ebp
call fcn.00444720
add esp, 8
or dword [esi + 0xa8], 2
cmp dword [esi + 0x48], 0
je 0x45ed42
mov eax, dword [ebp + 0x534]
mov dword [esi + 0x54], eax
mov ecx, dword [esp + 0x30]
mov dword [esi + 0x58], 0
cmp dword [ecx], 0
jne 0x45edd4
mov edx, dword [esi + 0x5c]
cmp byte [edx], 0
jne 0x45e090
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x10
ret
mov eax, dword [edi]
push eax
call fcn.0045c470
add esp, 4
test eax, eax
jne 0x45edd6
cmp dword [esi + 0x50], eax
jne 0x45edd4
cmp dword [esi + 0x58], 5
jbe 0x45edd4
mov eax, dword [ebp + 0x534]
mov ecx, dword [esp + 0x28]
push ebp
call fcn.0045c440
add esp, 4
test eax, eax
jne 0x45edd4
pop edi
mov dword [esi + 0x48], eax
mov dword [esi + 0x4c], 2
pop esi
pop ebp
pop ebx
add esp, 0x10
ret
mov eax, dword [esp + 0x2c]
mov dword [esi + 0x48], 0
cmp dword [eax], 0
je 0x45ecd7
pop edi
mov dword [esi + 0x4c], 1
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x10
ret
mov dword [esi + 0x4c], 2
mov dword [eax], edi
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x10
ret
pop edi
mov dword [esi + 0x48], 0
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x10
ret
push str.Maximum_file_size_exceeded
push edi
call fcn.004447b0
add esp, 8
pop edi
pop esi
pop ebp
mov eax, 0x3f
pop ebx
add esp, 0x10
ret
pop edi
pop esi
pop ebp
mov eax, 0x1b
pop ebx
add esp, 0x10
ret
mov edx, dword [esi + 0x78]
push edx
push str.The_requested_URL_returned_error:__d
push ebp
call fcn.004447b0
add esp, 0xc
pop edi
pop esi
pop ebp
mov eax, 0x16
pop ebx
add esp, 0x10
ret
cmp dword [ebp + 0x2d4], 0
je 0x45ed57
mov eax, dword [esp + 0x30]
mov dword [eax], 1
jmp 0x45ed6e
cmp dword [esi + 0xc8], 0
je 0x45ed6e
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 0x45ed7c
cmp ecx, eax
je 0x45ed92
push ecx
push eax
push ebp
call fcn.0044eaf0
mov ecx, dword [esi]
mov edx, dword [esi + 4]
add esp, 0xc
mov dword [esi + 0x10], ecx
mov dword [esi + 0x14], edx
cmp dword [esi + 0x10], 0
jne 0x45edaa
cmp dword [esi + 0x14], 0
jne 0x45edaa
mov eax, dword [esp + 0x30]
mov dword [eax], 1
jmp 0x45edb3
mov ecx, dword [esp + 0x30]
cmp dword [ecx], 0
je 0x45edba
and dword [esi + 0xa8], 0xfffffffe
cmp dword [ebp + 0x2e4], 0
je 0x45edd4
mov edx, dword [esi + 0x60]
push ebx
push edi
push edx
push 1
push ebp
call fcn.00444630
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x10
ret