Function at 0x40e8f0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x14
push ebx
push esi
mov esi, dword [esp + 0x2c]
xor ebx, ebx
mov byte [esp + 0xa], 0
mov byte [esp + 0xb], 0
mov byte [esp + 0xc], 0
test esi, esi
je 0x40f5fd
cmp dword [esi + 0x86cc], 0xc0dedbad
jne 0x40f5fd
push ebp
push edi
jmp 0x40e930
xor ebp, ebp
mov byte [esp + 0x34], 0
cmp byte [esi + 0x85e1], 0
je 0x40e981
push dword [esi + 0x85e8]
push esi
push str.Pipe_broke:_handle__p__url___s_n
push esi
call fcn.0040d350
mov eax, dword [esi + 0xc]
add esp, 0x10
cmp eax, 0x11
jge 0x40e96e
cmp eax, 2
je 0x40e969
mov dword [esi + 0xc], 2
or ebp, 0xffffffff
xor ebx, ebx
mov byte [esi + 0x85e1], 0
mov dword [esi + 8], 0
jmp 0x40f5bc
mov eax, dword [esi + 8]
lea edi, [esi + 8]
test eax, eax
jne 0x40e9a0
mov ecx, dword [esi + 0xc]
cmp ecx, 2
jle 0x40e99c
cmp ecx, 0x10
jl 0x40f5d2
test eax, eax
je 0x40e9af
mov ecx, dword [esi + 0xc]
cmp ecx, 2
jle 0x40e9af
cmp ecx, 0x11
jge 0x40e9af
mov dword [eax], esi
cmp dword [edi], ebp
je 0x40eadf
mov eax, dword [esi + 0xc]
cmp eax, 2
jl 0x40eadf
cmp eax, 0x11
jge 0x40eadf
cmp eax, 8
setle al
movzx eax, al
push eax
lea eax, [esp + 0x30]
push eax
push esi
call fcn.00410560
add esp, 0xc
test eax, eax
jns 0x40eadf
mov eax, dword [esi + 0xc]
cmp eax, 3
jne 0x40ea21
push dword [esi + 0x444]
push dword [esi + 0x440]
push dword [esp + 0x38]
push dword [esp + 0x38]
call fcn.00412570
push eax
push str.Resolving_timed_out_after__ld_milliseconds
push esi
call fcn.0040d280
add esp, 0x1c
jmp 0x40eab5
cmp eax, 4
jne 0x40ea50
push dword [esi + 0x444]
push dword [esi + 0x440]
push dword [esp + 0x38]
push dword [esp + 0x38]
call fcn.00412570
push eax
push str.Connection_timed_out_after__ld_milliseconds
push esi
call fcn.0040d280
add esp, 0x1c
jmp 0x40eab5
mov eax, dword [esi + 0x4c]
cmp eax, 0xffffffff
je 0x40ea87
push eax
push dword [esi + 0x5c]
push dword [esi + 0x444]
push dword [esi + 0x440]
push dword [esi + 0x78]
push dword [esi + 0x74]
call fcn.00412570
add esp, 0x10
push eax
push str.Operation_timed_out_after__ld_milliseconds_with__ld_out_of__ld_bytes_received
push esi
call fcn.0040d280
add esp, 0x14
jmp 0x40eab5
push dword [esi + 0x5c]
push dword [esi + 0x444]
push dword [esi + 0x440]
push dword [esp + 0x3c]
push dword [esp + 0x3c]
call fcn.00412570
add esp, 0x10
push eax
push str.Operation_timed_out_after__ld_milliseconds_with__ld_bytes_received
push esi
call fcn.0040d280
add esp, 0x10
cmp dword [esi + 0xc], 9
jle 0x40eac9
mov eax, dword [edi]
mov byte [esp + 0x34], 1
mov byte [eax + 0x230], 1
push 1
mov ebx, 0x1c
push ebx
push edi
call fcn.00404e80
add esp, 0xc
jmp case.0x40eaeb.1
mov eax, dword [esi + 0xc]
cmp eax, 0x12
ja case.default.0x40eaeb
jmp dword [eax*4 + 0x40f608]
push esi
call fcn.00419f40
mov ebx, eax
add esp, 4
test ebx, ebx
jne case.0x40eaeb.1
cmp dword [esi + 0xc], 2
je 0x40eb12
mov dword [esi + 0xc], 2
push 1
push esi
call fcn.0041b4d0
add esp, 8
or ebp, 0xffffffff
jmp case.0x40eaeb.1
push 2
push esi
call fcn.0041b4d0
lea eax, [esp + 0x1a]
push eax
lea eax, [esp + 0x22]
push eax
push edi
push esi
call fcn.00404b80
mov ebx, eax
add esp, 0x18
cmp ebx, 0x59
jne 0x40eb7a
cmp dword [esi + 0xc], 1
je 0x40eb55
mov dword [esi + 0xc], 1
mov eax, dword [esp + 0x28]
push esi
mov eax, dword [eax + 0x18]
push dword [eax + 4]
push eax
call fcn.004184d0
add esp, 0xc
mov ebx, eax
neg ebx
sbb ebx, ebx
and ebx, 0xffffffe5
add ebx, 0x1b
jmp case.0x40eaeb.1
test ebx, ebx
jne case.0x40eaeb.1
push dword [edi]
push esi
call fcn.00417710
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x40eb9d
mov byte [esp + 0x34], 1
jmp case.0x40eaeb.1
cmp byte [esp + 0x16], 0
je 0x40ebbe
cmp dword [esi + 0xc], 3
mov edx, dword [esp + 0x28]
je 0x40f499
mov dword [esi + 0xc], 3
jmp 0x40f499
or ebp, 0xffffffff
cmp byte [esp + 0x12], 0
je 0x40ebe6
mov edx, dword [esp + 0x28]
xor eax, eax
cmp byte [edx + 0x30], al
sete al
add eax, 8
push eax
push esi
call fcn.0040e6e0
add esp, 8
jmp 0x40f499
mov eax, dword [edi]
mov edx, dword [esp + 0x28]
cmp dword [eax + 0x518], 1
jne 0x40ec0b
cmp dword [esi + 0xc], 5
je 0x40f499
mov dword [esi + 0xc], 5
jmp 0x40f499
cmp dword [esi + 0xc], 4
je 0x40f499
mov dword [esi + 0xc], 4
jmp 0x40f499
mov eax, dword [edi]
push dword [eax + 0xa0]
push dword [eax + 0x88]
push eax
call fcn.004113e0
add esp, 0xc
mov dword [esp + 0x1c], eax
test eax, eax
je 0x40ec52
push str.Hostname_was_found_in_DNS_cache_n
push esi
xor ebx, ebx
call fcn.0040d350
add esp, 8
jmp 0x40ec57
mov ebx, 6
mov eax, dword [esp + 0x28]
push esi
push eax
call fcn.0040f980
add esp, 8
cmp dword [esp + 0x1c], ebp
je 0x40ec98
xor ebx, ebx
or ebp, 0xffffffff
cmp byte [esp + 0x12], bl
je 0x40ebe6
mov edx, dword [esp + 0x28]
xor eax, eax
cmp byte [edx + 0x30], al
sete al
add eax, 8
push eax
push esi
call fcn.0040e6e0
add esp, 8
jmp 0x40f499
mov edx, dword [esp + 0x28]
test ebx, ebx
je 0x40f499
mov byte [esp + 0x34], 1
jmp 0x40f499
lea eax, [esp + 0x12]
push eax
push dword [edi]
call fcn.00413c40
mov ebx, eax
add esp, 8
mov eax, dword [edi]
or ebp, 0xffffffff
cmp byte [eax + 0x246], 0
je 0x40ece9
mov edx, dword [esp + 0x28]
xor ebx, ebx
cmp dword [esi + 0xc], 2
je 0x40f499
mov dword [esi + 0xc], 2
jmp 0x40f499
test ebx, ebx
jne case.0x40eaeb.1
cmp dword [eax + 0x518], 2
jne case.0x40eaeb.1
cmp dword [esi + 0xc], 6
mov edx, dword [esp + 0x28]
je 0x40f499
mov dword [esi + 0xc], 6
jmp 0x40f499
lea eax, [esp + 0x17]
push eax
push 0
push dword [edi]
call fcn.0040ffd0
add esp, 0xc
mov ebx, eax
cmp byte [esp + 0x17], 0
je 0x40ed55
test ebx, ebx
jne 0x40ed5d
mov eax, dword [edi]
xor ecx, ecx
or ebp, 0xffffffff
cmp byte [eax + 0x23d], cl
sete cl
add ecx, 5
push ecx
push esi
call fcn.0040e6e0
jmp 0x40f492
test ebx, ebx
je case.0x40eaeb.1
mov byte [esp + 0x34], 1
jmp case.0x40eaeb.1
lea eax, [esp + 0x12]
push eax
push dword [edi]
call fcn.00405570
add esp, 8
mov ebx, eax
cmp byte [esp + 0x12], 0
jne 0x40ed99
cmp dword [esi + 0xc], 7
mov edx, dword [esp + 0x28]
je 0x40f499
mov dword [esi + 0xc], 7
jmp 0x40f499
test ebx, ebx
jne 0x40edbe
mov edx, dword [esp + 0x28]
xor eax, eax
cmp byte [edx + 0x30], al
sete al
add eax, 8
push eax
push esi
call fcn.0040e6e0
add esp, 8
or ebp, 0xffffffff
jmp 0x40f499
push esi
call fcn.00419f30
push 1
push ebx
push edi
call fcn.00404e80
add esp, 0x10
mov byte [esp + 0x34], 1
jmp case.0x40eaeb.1
lea eax, [esp + 0x12]
push eax
push dword [edi]
call fcn.00405610
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x40edbe
mov edx, dword [esp + 0x28]
cmp byte [esp + 0x12], al
je 0x40f499
jmp 0x40eda1
mov edx, dword [edi]
cmp byte [edx + 0x2cd], 0
jne case.0x40eaeb.1
push dword [edx + 0x2d0]
push esi
call fcn.0040e6c0
add esp, 8
test al, al
je case.0x40eaeb.1
mov byte [edx + 0x2cd], 1
cmp dword [esi + 0xc], 9
je 0x40ee39
mov dword [esi + 0xc], 9
or ebp, 0xffffffff
jmp case.0x40eaeb.1
cmp byte [esi + 0x29d], 0
je 0x40ee6a
mov eax, dword [edi]
mov byte [eax + 0x230], 0
cmp dword [esi + 0xc], 0x10
je 0x40ee60
mov dword [esi + 0xc], 0x10
xor ebx, ebx
or ebp, 0xffffffff
jmp case.0x40eaeb.1
lea eax, [esp + 0x13]
push eax
push edi
call fcn.00404d60
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x40ef0a
cmp byte [esp + 0x13], al
jne 0x40eed6
cmp byte [esi + 0x380], al
je 0x40eec2
mov eax, dword [esi + 0x8608]
cmp eax, 6
je 0x40eea0
cmp eax, 4
jne 0x40eec2
push 0
push 0
push edi
call fcn.00404e80
add esp, 0xc
cmp dword [esi + 0xc], 0x10
je 0x40eeba
mov dword [esi + 0xc], 0x10
or ebp, 0xffffffff
jmp case.0x40eaeb.1
cmp dword [esi + 0xc], 0xa
je 0x40eecf
mov dword [esi + 0xc], 0xa
xor ebp, ebp
jmp case.0x40eaeb.1
mov eax, dword [edi]
cmp byte [eax + 0x238], 0
je 0x40eef5
cmp dword [esi + 0xc], 0xb
je 0x40eeee
mov dword [esi + 0xc], 0xb
xor ebp, ebp
jmp case.0x40eaeb.1
cmp dword [esi + 0xc], 0xc
je 0x40ef02
mov dword [esi + 0xc], 0xc
or ebp, 0xffffffff
jmp case.0x40eaeb.1
cmp ebx, 0x37
jne 0x40efc8
mov eax, dword [edi]
cmp byte [eax + 0x231], 0
je 0x40efc8
lea ecx, [esp + 0x18]
mov dword [esp + 0x18], ebp
push ecx
push eax
mov byte [esp + 0x1d], 0
call fcn.0041a490
add esp, 8
test eax, eax
je 0x40ef46
mov ebx, eax
mov byte [esp + 0x34], 1
jmp 0x40ef4f
cmp dword [esp + 0x18], ebp
setne byte [esp + 0x15]
push esi
call fcn.00419f30
push 0
push ebx
push edi
call fcn.00404e80
add esp, 0x10
cmp byte [esp + 0x15], 0
je 0x40efb1
test eax, eax
je 0x40ef85
cmp eax, 0x37
je 0x40ef85
mov ebx, eax
push dword [esp + 0x18]
call dword [0x430148]
add esp, 4
jmp case.0x40eaeb.1
push 2
push dword [esp + 0x1c]
push esi
call fcn.00419c60
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x40ef73
cmp dword [esi + 0xc], 2
je 0x40efa7
mov dword [esi + 0xc], 2
or ebp, 0xffffffff
xor ebx, ebx
jmp case.0x40eaeb.1
push dword [esp + 0x18]
mov byte [esp + 0x38], 1
call dword [0x430148]
add esp, 4
jmp case.0x40eaeb.1
push esi
call fcn.00419f30
add esp, 4
cmp dword [edi], ebp
je 0x40efe1
push 0
push ebx
push edi
call fcn.00404e80
add esp, 0xc
mov byte [esp + 0x34], 1
jmp case.0x40eaeb.1
lea eax, [esp + 0x13]
push eax
push dword [edi]
call fcn.00405650
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x40f02c
cmp byte [esp + 0x13], al
je case.0x40eaeb.1
mov eax, dword [edi]
xor ecx, ecx
cmp byte [eax + 0x238], cl
sete cl
add ecx, 0xb
push ecx
push esi
call fcn.0040e6e0
add esp, 8
or ebp, 0xffffffff
jmp case.0x40eaeb.1
push esi
call fcn.00419f30
push 0
push ebx
push edi
call fcn.00404e80
add esp, 0x10
mov byte [esp + 0x34], 1
jmp case.0x40eaeb.1
lea eax, [esp + 0x20]
push eax
push dword [edi]
call fcn.00404df0
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x40f02c
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x40eecf
cmp ecx, 1
sete al
lea eax, [eax*2 + 0xa]
push eax
push esi
call fcn.0040e6e0
add esp, 8
or ebp, 0xffffffff
jmp case.0x40eaeb.1
push dword [edi]
push esi
call fcn.00417760
mov eax, dword [esp + 0x30]
push eax
call fcn.0040dc50
mov eax, dword [edi]
add esp, 0xc
cmp dword [eax + 0x268], 0xffffffff
jne 0x40f0c6
cmp dword [eax + 0x26c], 0xffffffff
jne 0x40f0c6
cmp dword [esi + 0xc], 0x10
je 0x40f0d3
mov dword [esi + 0xc], 0x10
or ebp, 0xffffffff
jmp case.0x40eaeb.1
cmp dword [esi + 0xc], 0xd
je 0x40f0d3
mov dword [esi + 0xc], 0xd
or ebp, 0xffffffff
jmp case.0x40eaeb.1
mov edx, dword [edi]
cmp byte [edx + 0x2cc], 0
jne case.0x40eaeb.1
push dword [edx + 0x2d4]
push esi
call fcn.0040e6c0
add esp, 8
test al, al
je case.0x40eaeb.1
mov byte [edx + 0x2cc], 1
cmp dword [esi + 0xc], 0xe
je 0x40f115
mov dword [esi + 0xc], 0xe
or ebp, 0xffffffff
jmp case.0x40eaeb.1
push dword [edi]
call fcn.0041b620
add esp, 4
test eax, eax
je 0x40f132
mov ebx, 0x2a
jmp 0x40f145
push dword [esp + 0x30]
push dword [esp + 0x30]
push esi
call fcn.0041de40
add esp, 0xc
mov ebx, eax
mov eax, dword [esi + 0x1bc]
test eax, eax
je 0x40f15b
cmp dword [esi + 0x404], eax
jge case.0x40eaeb.1
mov eax, dword [esi + 0x1c0]
test eax, eax
je 0x40f171
cmp dword [esi + 0x400], eax
jge case.0x40eaeb.1
cmp dword [esi + 0xc], 0xe
mov edx, dword [esp + 0x28]
je 0x40f499
mov dword [esi + 0xc], 0xe
jmp 0x40f499
mov ecx, dword [esi + 0x1bc]
mov dword [esp + 0x18], ebp
mov byte [esp + 0x15], 0
test ecx, ecx
jle 0x40f1d5
mov edx, dword [esi + 0x404]
cmp edx, ecx
jle 0x40f1d5
mov eax, dword [esi + 0x248]
mov dword [esi + 0xc], 0xf
test eax, eax
jne 0x40f1be
mov eax, 0x4000
push eax
push edx
push ecx
call fcn.0041a6f0
push eax
push esi
call fcn.0040d970
add esp, 0x14
jmp case.0x40eaeb.1
mov ecx, dword [esi + 0x1c0]
test ecx, ecx
jle 0x40f216
mov edx, dword [esi + 0x400]
cmp edx, ecx
jle 0x40f216
mov eax, dword [esi + 0x248]
mov dword [esi + 0xc], 0xf
test eax, eax
jne 0x40f1ff
mov eax, 0x4000
push eax
push edx
push ecx
call fcn.0041a6f0
push eax
push esi
call fcn.0040d970
add esp, 0x14
jmp case.0x40eaeb.1
lea eax, [esp + 0x14]
push eax
push dword [edi]
call fcn.0041a150
add esp, 8
mov ebx, eax
test byte [esi + 0xd4], 1
jne 0x40f239
mov eax, dword [edi]
mov byte [eax + 0x2cc], 0
test byte [esi + 0xd4], 2
jne 0x40f24b
mov eax, dword [edi]
mov byte [eax + 0x2cd], 0
cmp byte [esp + 0x14], 0
jne 0x40f257
cmp ebx, 0x38
jne 0x40f282
lea eax, [esp + 0x18]
push eax
push dword [edi]
call fcn.0041a490
add esp, 8
test eax, eax
jne 0x40f282
cmp dword [esp + 0x18], ebp
setne al
mov byte [esp + 0x15], al
test al, al
je 0x40f282
xor ebx, ebx
mov byte [esp + 0x14], 1
jmp 0x40f2ca
test ebx, ebx
je 0x40f2bf
mov ecx, dword [edi]
mov eax, dword [ecx + 0x25c]
test byte [eax + 0x40], 2
jne 0x40f29b
mov byte [ecx + 0x230], 1
push esi
call fcn.00419f30
push 0
push ebx
push edi
call fcn.00404e80
add esp, 0x10
push dword [esp + 0x18]
call dword [0x430148]
add esp, 4
jmp case.0x40eaeb.1
cmp byte [esp + 0x14], 0
je 0x40f3f8
push esi
call fcn.00419f30
mov eax, dword [edi]
push dword [eax + 0x2d4]
push esi
call fcn.004056b0
mov eax, dword [edi]
add esp, 0xc
mov eax, dword [eax + 0x2d4]
mov eax, dword [eax]
test eax, eax
je 0x40f2fb
push 1
push dword [eax]
call fcn.0040d970
add esp, 8
mov eax, dword [esp + 0x28]
push eax
call fcn.0040dc50
add esp, 4
cmp dword [esi + 0xe0], ebp
jne 0x40f380
cmp byte [esp + 0x15], 0
jne 0x40f3ae
cmp dword [esi + 0xdc], ebp
je 0x40f35a
push dword [esp + 0x18]
call dword [0x430148]
mov eax, dword [esi + 0xdc]
push 1
push eax
push esi
mov dword [esp + 0x28], eax
mov dword [esi + 0xdc], ebp
call fcn.00419c60
mov ebx, eax
add esp, 0x10
test ebx, ebx
jne 0x40f355
mov dword [esp + 0x18], ebp
jmp 0x40f35a
mov byte [esp + 0x34], 1
cmp dword [esi + 0xc], 0x10
je 0x40f3f5
push dword [esp + 0x18]
mov dword [esi + 0xc], 0x10
or ebp, 0xffffffff
call dword [0x430148]
add esp, 4
jmp case.0x40eaeb.1
cmp byte [esp + 0x15], 0
jne 0x40f3ae
push dword [esp + 0x18]
call dword [0x430148]
mov eax, dword [esi + 0xe0]
add esp, 4
mov dword [esp + 0x18], eax
mov dword [esi + 0xe0], ebp
mov dword [esp + 0x1c], 3
jmp 0x40f3b6
mov dword [esp + 0x1c], 2
push 0
push 0
push edi
call fcn.00404e80
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x40f3f8
push dword [esp + 0x1c]
push dword [esp + 0x1c]
push esi
call fcn.00419c60
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x40f3f8
cmp dword [esi + 0xc], 2
je 0x40f3ed
mov dword [esi + 0xc], 2
mov dword [esp + 0x18], 0
or ebp, 0xffffffff
push dword [esp + 0x18]
call dword [0x430148]
add esp, 4
jmp case.0x40eaeb.1
mov eax, dword [edi]
or ebp, 0xffffffff
test eax, eax
je 0x40f446
push dword [eax + 0x2d4]
push esi
call fcn.004056b0
mov eax, dword [esp + 0x30]
push eax
call fcn.0040dc50
push 0
push ebx
push edi
call fcn.00404e80
add esp, 0x18
test ebx, ebx
jne 0x40f43b
mov ebx, eax
cmp dword [edi], 0
je 0x40f446
mov dword [edi], 0
cmp byte [esi + 0x380], 0
je 0x40f46b
cmp dword [esi + 0x8608], 6
je 0x40f46b
cmp dword [esi + 0xc], 0
mov edx, dword [esp + 0x28]
je 0x40f499
mov dword [esi + 0xc], 0
jmp 0x40f499
cmp dword [esi + 0xc], 0x11
mov edx, dword [esp + 0x28]
je 0x40f580
mov eax, dword [esi + 0x40]
mov dword [esi + 0xc], 0x11
dec dword [eax + 0x10]
jmp 0x40f499
push 0
push esi
mov dword [edi], ebp
call fcn.0040d7e0
add esp, 8
mov edx, dword [esp + 0x28]
cmp dword [esi + 0xc], 0x11
jge 0x40f57e
test ebx, ebx
je 0x40f537
push edx
mov byte [esi + 0x85e1], 0
call fcn.0040dc50
mov eax, dword [edi]
add esp, 4
test eax, eax
je 0x40f513
mov byte [eax + 0x2cd], 0
mov eax, dword [edi]
mov byte [eax + 0x2cc], 0
mov eax, dword [edi]
push dword [eax + 0x2d0]
push esi
call fcn.004056b0
mov eax, dword [edi]
push dword [eax + 0x2d4]
push esi
call fcn.004056b0
add esp, 0x10
cmp byte [esp + 0x34], 0
je 0x40f522
cmp ebx, 0x1c
sete al
movzx eax, al
push eax
push dword [edi]
call fcn.00404ca0
add esp, 8
mov dword [edi], 0
jmp 0x40f522
cmp dword [esi + 0xc], 2
jne 0x40f522
push esi
call fcn.00419f30
add esp, 4
cmp dword [esi + 0xc], 0x11
je 0x40f580
mov eax, dword [esi + 0x40]
mov dword [esi + 0xc], 0x11
dec dword [eax + 0x10]
jmp 0x40f57a
mov eax, dword [edi]
test eax, eax
je 0x40f57a
push eax
call fcn.0041b620
add esp, 4
test eax, eax
je 0x40f57a
mov eax, dword [edi]
xor ecx, ecx
mov ebx, 0x2a
mov byte [eax + 0x230], 1
cmp dword [esi + 0xc], 0x10
setge cl
add ecx, 0x10
cmp dword [esi + 0xc], ecx
je 0x40f577
mov dword [esi + 0xc], ecx
cmp ecx, 0x11
jne 0x40f577
mov eax, dword [esi + 0x40]
dec dword [eax + 0x10]
or ebp, 0xffffffff
cmp dword [esi + 0xc], 0x11
jne 0x40f5bc
mov eax, dword [esp + 0x28]
lea ecx, [esi + 0x14]
mov dword [ecx], 1
mov dword [ecx + 4], esi
mov dword [ecx + 8], ebx
mov eax, dword [eax + 0x14]
push ecx
push dword [eax + 4]
push eax
call fcn.004184d0
add esp, 0xc
mov ebp, eax
neg ebp
sbb ebp, ebp
and ebp, 0xfffffffd
add ebp, 3
cmp dword [esi + 0xc], 0x12
je 0x40f5bc
mov dword [esi + 0xc], 0x12
cmp ebp, 0xffffffff
je 0x40e930
pop edi
mov eax, ebp
mov dword [esi + 0x10], ebx
pop ebp
pop esi
pop ebx
add esp, 0x14
ret
push dword [esi + 0xc]
push str.In_state__d_with_no_easy_conn__bail_out__n
push esi
call fcn.0040d280
add esp, 0xc
pop edi
pop ebp
pop esi
mov eax, 4
pop ebx
add esp, 0x14
ret
pop edi
pop ebp
mov dword [esi + 0x10], ebx
xor eax, eax
pop esi
pop ebx
add esp, 0x14
ret
pop esi
mov eax, 2
pop ebx
add esp, 0x14
ret