Function at 0x426300
Capabilities:
Get socket status
Receive data
Receive data on socket

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x466560
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x6bc
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x1c], esi
mov dword [ebp - 0x18], ebx
mov eax, dword [ecx + 8]
xor ebx, ebx
mov dword [ebp - 0x214], 1
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x210], eax
mov dword [ebp - 0x50], ebx
mov dword [ebp - 0x4c], ebx
lea eax, [ebp - 0x214]
lea edx, [ebp - 0x50]
push edx
push ebx
push ebx
push eax
push ebx
call dword [sym.imp.WS2_32.dll_select]
test eax, eax
jle 0x42652e
lea eax, [ebp - 0x650]
push 0x400
push 0
push eax
call fcn.00461ca0
add esp, 0xc
mov edx, dword [ebp - 0x24]
lea eax, [ebp - 0x650]
push 0
push 0x400
push eax
push dword [edx + 8]
call dword [sym.imp.WS2_32.dll_recv]
mov edi, eax
test edi, edi
jle 0x42652e
mov dword [ebp - 0x88], 0xf
lea edx, [ebp - 0xa0]
xor eax, eax
mov esi, 0xf
mov dword [ebp - 0x8c], eax
mov byte [ebp - 0x9c], al
mov dword [ebp - 0x34], edx
lea ecx, [ebp - 0x650]
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x2c], edi
lea edx, [ebp - 0x9c]
lea eax, [ebp - 0x650]
cmp eax, edx
jae 0x4273ab
xor eax, eax
test eax, eax
je 0x426479
lea edx, [ebp - 0x9c]
lea eax, [ebp - 0xa0]
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], eax
lea ebx, [ebp - 0x650]
sub ebx, edx
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0x60], ebx
cmp edx, ebx
jb 0x426424
mov eax, edx
sub eax, ebx
cmp edi, eax
jb 0x42641f
mov edi, eax
mov dword [ebp - 0x6c], edi
jmp 0x42643f
call fcn.00461253
mov edx, dword [ebp - 0x8c]
mov ebx, dword [ebp - 0x60]
mov eax, edx
sub eax, ebx
cmp edi, eax
jb 0x42643c
mov edi, eax
mov dword [ebp - 0x6c], edi
add edi, ebx
cmp edx, edi
jae 0x426453
call fcn.00461253
mov edx, dword [ebp - 0x8c]
mov ebx, dword [ebp - 0x60]
mov esi, edx
sub esi, edi
cmp esi, 0xffffffff
jb 0x426461
mov esi, 0xffffffff
test esi, esi
ja 0x4265c3
cmp edx, ebx
jae 0x42646f
mov ebx, edx
test ebx, ebx
ja 0x426569
jmp 0x4264a7
mov dword [ebp - 0x5c], edi
cmp edi, 0xfffffffe
jbe 0x42648c
call fcn.00461214
mov esi, dword [ebp - 0x88]
cmp esi, edi
jb 0x4271d6
test edi, edi
je 0x4271b1
mov eax, dword [ebp - 0x5c]
test eax, eax
ja 0x42716a
mov dword [ebp - 4], 0xe
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x3c], 0
add edx, 0x10
lea eax, [ebp - 0xa0]
mov dword [ebp - 0x44], edx
mov edx, dword [edx + 0x14]
mov dword [ebp - 0x40], eax
mov eax, dword [eax + 0x14]
mov dword [ebp - 0x48], eax
cmp eax, 0xffffffff
jb 0x4264da
mov eax, 0xffffffff
mov ecx, edx
mov dword [ebp - 0x38], eax
neg ecx
dec ecx
cmp eax, ecx
jae 0x4264ed
lea ecx, [eax + edx]
cmp edx, ecx
jbe 0x4264f5
call fcn.00461214
mov eax, dword [ebp - 0x38]
test eax, eax
ja 0x426eda
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x88]
cmp eax, 0x10
jae 0x426ec9
mov dword [ebp - 0x88], 0xf
xor eax, eax
mov dword [ebp - 0x8c], eax
mov byte [ebp - 0x14], al
mov byte [ebp - 0x9c], al
mov ebx, dword [ebp - 0x24]
push 0
push 0xa
add ebx, 0x10
mov ecx, ebx
call fcn.004131d0
cmp eax, dword [0x494330]
mov dword [ebp - 0x28], eax
jne 0x426653
mov edi, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
mov ebx, dword [ebp - 0x18]
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 4
mov ecx, dword [ebp - 0x88]
cmp ecx, 0x10
jb 0x42657c
mov esi, dword [ebp - 0x9c]
jmp 0x426582
lea esi, [ebp - 0x9c]
lea eax, [ebx + esi]
sub edx, ebx
push edx
push eax
push ecx
push esi
call fcn.0044abd5
add esp, 0x10
mov edx, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x88]
sub edx, ebx
mov dword [ebp - 0x8c], edx
cmp eax, 0x10
jb 0x4265b4
mov eax, dword [ebp - 0x9c]
jmp 0x4265ba
lea eax, [ebp - 0x9c]
mov byte [eax + edx], 0
jmp 0x4264a7
mov ecx, dword [ebp - 0x88]
cmp ecx, 0x10
jb 0x4265d6
mov eax, dword [ebp - 0x9c]
jmp 0x4265dc
lea eax, [ebp - 0x9c]
mov dword [ebp - 0x668], ebx
lea ebx, [edi + eax]
mov dword [ebp - 0x664], ebx
sub ecx, edi
lea ebx, [edi + esi]
add ebx, eax
mov eax, esi
neg eax
sub eax, edi
add eax, edx
push eax
push ebx
mov ebx, dword [ebp - 0x668]
push ecx
push dword [ebp - 0x664]
call fcn.0044abd5
add esp, 0x10
mov edx, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x88]
sub edx, esi
mov dword [ebp - 0x8c], edx
cmp eax, 0x10
jb 0x426632
mov eax, dword [ebp - 0x9c]
jmp 0x426638
lea eax, [ebp - 0x9c]
mov byte [eax + edx], 0
mov edx, dword [ebp - 0x8c]
jmp 0x426469
lea edx, [ebp - 0x110]
push eax
push 0
mov ecx, ebx
push edx
call fcn.0040a2d0
mov dword [ebp - 4], 9
mov ebx, dword [ebp + 8]
mov dword [ebp - 0x70], 0
lea eax, [ebp - 0x110]
mov esi, dword [eax + 0x14]
mov dword [ebp - 0x78], ebx
cmp ebx, eax
mov dword [ebp - 0x74], eax
mov dword [ebp - 0xa4], esi
je 0x426dbf
mov dword [ebp - 0xac], esi
cmp esi, 0xfffffffe
jbe 0x4266a8
call fcn.00461214
mov esi, dword [ebp - 0xac]
mov ecx, dword [ebx + 0x18]
cmp ecx, esi
jb 0x426bef
test esi, esi
je 0x426bcc
test esi, esi
ja 0x426b6e
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0xf8]
cmp eax, 0x10
jae 0x426b5d
mov ecx, dword [ebp - 0x24]
mov edx, dword [ebp - 0x28]
mov dword [ebp - 0xf8], 0xf
xor eax, eax
mov dword [ebp - 0xfc], eax
mov byte [ebp - 0x54], al
mov byte [ebp - 0x10c], al
lea ebx, [ebp - 0x110]
push 0xffffffffffffffff
add ecx, 0x10
inc edx
push edx
push ebx
call fcn.0040a2d0
mov dword [ebp - 4], 4
mov ebx, dword [ebp - 0x24]
mov dword [ebp - 0x7c], 0
lea edi, [ebx + 0x10]
lea eax, [ebp - 0x110]
mov esi, dword [eax + 0x14]
mov dword [ebp - 0x84], edi
cmp edi, eax
mov dword [ebp - 0x80], eax
mov dword [ebp - 0xa8], esi
je 0x426a36
mov dword [ebp - 0xb0], esi
cmp esi, 0xfffffffe
jbe 0x426757
call fcn.00461214
mov esi, dword [ebp - 0xb0]
mov ecx, dword [edi + 0x18]
cmp ecx, esi
jb 0x426866
test esi, esi
je 0x426840
test esi, esi
ja 0x4267df
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0xf8]
cmp eax, 0x10
jae 0x4267d1
mov edi, dword [ebp - 0x20]
mov esi, dword [ebp - 0x1c]
mov ebx, dword [ebp - 0x18]
xor edx, edx
mov eax, 1
mov dword [ebp - 0xf8], 0xf
mov dword [ebp - 0xfc], edx
mov byte [ebp - 0x58], dl
mov byte [ebp - 0x10c], dl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 4
push dword [ebp - 0x10c]
call fcn.0042e7a2
pop ecx
jmp 0x426780
mov esi, dword [ebp - 0x84]
mov ecx, dword [esi + 0x18]
cmp ecx, 0x10
jb 0x4267f2
mov edi, dword [esi + 4]
jmp 0x4267f5
lea edi, [esi + 4]
mov edx, dword [ebp - 0x80]
mov eax, dword [edx + 0x18]
cmp eax, 0x10
jb 0x426805
mov edx, dword [edx + 4]
jmp 0x426808
add edx, 4
add edx, dword [ebp - 0x7c]
mov ebx, dword [ebp - 0xa8]
push ebx
push edx
push ecx
push edi
call fcn.0044a80e
add esp, 0x10
mov eax, dword [esi + 0x18]
mov dword [esi + 0x14], ebx
cmp eax, 0x10
jb 0x42682d
mov esi, dword [esi + 4]
jmp 0x426830
add esi, 4
xor eax, eax
mov byte [ebp - 0xe4], al
mov byte [esi + ebx], al
jmp 0x42676e
mov eax, dword [edi + 0x18]
mov dword [edi + 0x14], 0
cmp eax, 0x10
jb 0x426854
mov ebx, dword [edi + 4]
jmp 0x426857
add ebx, 0x14
xor eax, eax
mov byte [ebp - 0xf4], al
mov byte [ebx], al
jmp 0x42676a
mov eax, dword [edi + 0x14]
mov dword [ebp - 0x240], edi
mov ebx, esi
mov dword [ebp - 0x23c], esi
or ebx, 0xf
cmp ebx, 0xfffffffe
mov dword [ebp - 0x238], eax
mov dword [ebp - 0x250], ebx
jbe 0x426895
mov dword [ebp - 0x250], esi
mov ebx, esi
jmp 0x4268aa
mov esi, ecx
shr esi, 1
mov eax, 0xaaaaaaab
mul ebx
shr edx, 1
cmp esi, edx
ja 0x426a19
mov dword [ebp - 4], 5
mov dword [ebp - 0x24c], 0
inc ebx
jne 0x4268c2
xor ebx, ebx
jmp 0x426905
xor edx, edx
mov eax, 0xffffffff
div ebx
cmp eax, 1
jae 0x426905
mov dword [ebp - 0x698], 0
lea esi, [ebp - 0x6bc]
mov ecx, esi
lea eax, [ebp - 0x698]
push eax
call fcn.0044a5f3
mov dword [esi], vtable.std::bad_alloc.0
lea eax, [ebp - 0x6bc]
push 0x475b08
push eax
call fcn.0044ab8b
push edi
mov dword [esp], ebx
call fcn.0042e777
pop ecx
mov dword [ebp - 4], 4
mov dword [ebp - 0x24c], eax
mov dword [ebp - 4], 4
nop
mov esi, dword [ebp - 0x238]
test esi, esi
ja 0x4269e6
mov edi, dword [ebp - 0x240]
mov eax, dword [edi + 0x18]
mov ebx, edi
cmp eax, 0x10
jae 0x4269cc
mov ecx, dword [ebp - 0x24c]
mov edx, dword [ebp - 0x250]
mov dword [ebx + 0x18], 0xf
xor eax, eax
mov byte [ebp - 0xec], al
mov byte [ebp - 0xe8], al
mov dword [ebx + 0x14], eax
mov byte [ebx + 4], al
mov dword [edi + 4], ecx
mov dword [edi + 0x18], edx
mov dword [edi + 0x14], esi
add edi, 4
cmp edx, 0x10
jae 0x426980
mov ecx, edi
mov byte [ecx + esi], al
mov esi, dword [ebp - 0xb0]
jmp 0x42676a
push dword [edi + 4]
call fcn.0042e7a2
pop ecx
mov edi, dword [ebp - 0x240]
mov esi, dword [ebp - 0x238]
jmp 0x426946
mov edi, dword [ebp - 0x240]
mov eax, dword [edi + 0x18]
cmp eax, 0x10
jb 0x4269f9
mov eax, dword [edi + 4]
jmp 0x4269fc
lea eax, [edi + 4]
mov edx, dword [ebp - 0x250]
push esi
push eax
inc edx
push edx
push dword [ebp - 0x24c]
call fcn.0044a80e
add esp, 0x10
jmp 0x426938
mov eax, esi
neg eax
add eax, 0xfffffffe
cmp ecx, eax
ja 0x4268aa
lea ebx, [ecx + esi]
mov dword [ebp - 0x250], ebx
jmp 0x4268aa
mov ecx, dword [edi + 0x14]
cmp ecx, esi
jae 0x426a45
call fcn.00461253
mov ecx, dword [edi + 0x14]
mov eax, ecx
sub eax, esi
cmp eax, 0xffffffff
jb 0x426a53
mov eax, 0xffffffff
mov dword [ebp - 0x218], eax
test eax, eax
ja 0x426acd
mov ebx, dword [ebp - 0x84]
mov esi, dword [ebp - 0x7c]
mov ecx, dword [ebx + 0x14]
cmp ecx, esi
jae 0x426a6f
mov esi, ecx
test esi, esi
jbe 0x42676e
mov eax, dword [ebx + 0x18]
cmp eax, 0x10
jb 0x426a84
mov edx, dword [ebx + 4]
jmp 0x426a87
lea edx, [ebx + 4]
add esp, 0xfffffff0
mov dword [esp], edx
mov dword [esp + 4], eax
add edx, esi
mov dword [esp + 8], edx
sub ecx, esi
mov dword [esp + 0xc], ecx
call fcn.0044abd5
add esp, 0x10
mov edx, dword [ebx + 0x14]
mov eax, dword [ebx + 0x18]
sub edx, esi
mov dword [ebx + 0x14], edx
cmp eax, 0x10
jb 0x426aba
mov ebx, dword [ebx + 4]
jmp 0x426abd
add ebx, 4
xor eax, eax
mov byte [ebp - 0x65c], al
mov byte [ebx + edx], al
jmp 0x42676e
mov edx, dword [edi + 0x18]
cmp edx, 0x10
jb 0x426ae0
mov eax, dword [edi + 4]
mov dword [ebp - 0x6a0], eax
jmp 0x426ae9
lea eax, [ebx + 0x14]
mov dword [ebp - 0x6a0], eax
mov dword [ebp - 0x684], ebx
add esp, 0xfffffff0
lea ebx, [esi + eax]
sub edx, esi
mov dword [esp], ebx
mov ebx, dword [ebp - 0x218]
mov dword [esp + 4], edx
lea edx, [esi + ebx]
add edx, eax
mov dword [esp + 8], edx
neg ebx
sub ebx, esi
add ebx, ecx
mov dword [esp + 0xc], ebx
mov ebx, dword [ebp - 0x684]
call fcn.0044abd5
add esp, 0x10
mov edx, dword [edi + 0x14]
sub edx, dword [ebp - 0x218]
mov eax, dword [edi + 0x18]
mov dword [edi + 0x14], edx
cmp eax, 0x10
jb 0x426b3e
mov ebx, dword [edi + 4]
jmp 0x426b41
add ebx, 0x14
mov esi, dword [ebp - 0x7c]
xor eax, eax
mov byte [ebp - 0x660], al
mov byte [ebx + edx], al
mov ebx, dword [ebp - 0x84]
mov ecx, dword [ebx + 0x14]
jmp 0x426a69
push dword [ebp - 0x10c]
call fcn.0042e7a2
pop ecx
jmp 0x4266d9
mov esi, dword [ebp - 0x78]
mov ecx, dword [esi + 0x18]
cmp ecx, 0x10
jb 0x426b7e
mov edi, dword [esi + 4]
jmp 0x426b81
lea edi, [esi + 4]
mov edx, dword [ebp - 0x74]
mov eax, dword [edx + 0x18]
cmp eax, 0x10
jb 0x426b91
mov edx, dword [edx + 4]
jmp 0x426b94
add edx, 4
add edx, dword [ebp - 0x70]
mov ebx, dword [ebp - 0xa4]
push ebx
push edx
push ecx
push edi
call fcn.0044a80e
add esp, 0x10
mov eax, dword [esi + 0x18]
mov dword [esi + 0x14], ebx
cmp eax, 0x10
jb 0x426bb9
mov esi, dword [esi + 4]
jmp 0x426bbc
add esi, 4
xor eax, eax
mov byte [ebp - 0xd8], al
mov byte [esi + ebx], al
jmp 0x4266c3
mov dword [ebx + 0x14], 0
cmp ecx, 0x10
jb 0x426bdd
mov edx, dword [ebx + 4]
jmp 0x426be0
lea edx, [ebx + 4]
xor eax, eax
mov byte [ebp - 0xf0], al
mov byte [edx], al
jmp 0x4266bb
mov eax, dword [ebx + 0x14]
mov dword [ebp - 0x234], ebx
mov ebx, esi
mov dword [ebp - 0x230], esi
or ebx, 0xf
cmp ebx, 0xfffffffe
mov dword [ebp - 0x22c], eax
mov dword [ebp - 0x248], ebx
jbe 0x426c1e
mov dword [ebp - 0x248], esi
mov ebx, esi
jmp 0x426c33
mov esi, ecx
shr esi, 1
mov eax, 0xaaaaaaab
mul ebx
shr edx, 1
cmp esi, edx
ja 0x426da2
mov dword [ebp - 4], 0xa
mov dword [ebp - 0x244], 0
inc ebx
jne 0x426c4b
xor ebx, ebx
jmp 0x426c8e
xor edx, edx
mov eax, 0xffffffff
div ebx
cmp eax, 1
jae 0x426c8e
mov dword [ebp - 0x694], 0
lea esi, [ebp - 0x6b0]
mov ecx, esi
lea eax, [ebp - 0x694]
push eax
call fcn.0044a5f3
mov dword [esi], vtable.std::bad_alloc.0
lea eax, [ebp - 0x6b0]
push 0x475b08
push eax
call fcn.0044ab8b
push edi
mov dword [esp], ebx
call fcn.0042e777
pop ecx
mov dword [ebp - 4], 9
mov dword [ebp - 0x244], eax
mov dword [ebp - 4], 9
nop
mov esi, dword [ebp - 0x22c]
test esi, esi
ja 0x426d6f
mov edi, dword [ebp - 0x234]
mov eax, dword [edi + 0x18]
mov ebx, edi
cmp eax, 0x10
jae 0x426d55
mov ecx, dword [ebp - 0x244]
mov edx, dword [ebp - 0x248]
mov dword [ebx + 0x18], 0xf
xor eax, eax
mov byte [ebp - 0xe0], al
mov byte [ebp - 0xdc], al
mov dword [ebx + 0x14], eax
mov byte [ebx + 4], al
mov dword [edi + 4], ecx
mov dword [edi + 0x18], edx
mov dword [edi + 0x14], esi
add edi, 4
cmp edx, 0x10
jae 0x426d09
mov ecx, edi
mov byte [ecx + esi], al
mov esi, dword [ebp - 0xac]
jmp 0x4266bb
push dword [edi + 4]
call fcn.0042e7a2
pop ecx
mov edi, dword [ebp - 0x234]
mov esi, dword [ebp - 0x22c]
jmp 0x426ccf
mov edi, dword [ebp - 0x234]
mov eax, dword [edi + 0x18]
cmp eax, 0x10
jb 0x426d82
mov eax, dword [edi + 4]
jmp 0x426d85
lea eax, [edi + 4]
mov edx, dword [ebp - 0x248]
push esi
push eax
inc edx
push edx
push dword [ebp - 0x244]
call fcn.0044a80e
add esp, 0x10
jmp 0x426cc1
mov eax, esi
neg eax
add eax, 0xfffffffe
cmp ecx, eax
ja 0x426c33
lea ebx, [ecx + esi]
mov dword [ebp - 0x248], ebx
jmp 0x426c33
mov ecx, dword [ebx + 0x14]
cmp ecx, esi
jae 0x426dce
call fcn.00461253
mov ecx, dword [ebx + 0x14]
mov edi, ecx
sub edi, esi
cmp edi, 0xffffffff
jb 0x426ddc
mov edi, 0xffffffff
test edi, edi
ja 0x426e4d
mov ebx, dword [ebp - 0x78]
mov esi, dword [ebp - 0x70]
mov ecx, dword [ebx + 0x14]
cmp ecx, esi
jae 0x426def
mov esi, ecx
test esi, esi
jbe 0x4266c3
mov eax, dword [ebx + 0x18]
cmp eax, 0x10
jb 0x426e04
mov edx, dword [ebx + 4]
jmp 0x426e07
lea edx, [ebx + 4]
add esp, 0xfffffff0
mov dword [esp], edx
mov dword [esp + 4], eax
add edx, esi
mov dword [esp + 8], edx
sub ecx, esi
mov dword [esp + 0xc], ecx
call fcn.0044abd5
add esp, 0x10
mov edx, dword [ebx + 0x14]
mov eax, dword [ebx + 0x18]
sub edx, esi
mov dword [ebx + 0x14], edx
cmp eax, 0x10
jb 0x426e3a
mov ebx, dword [ebx + 4]
jmp 0x426e3d
add ebx, 4
xor eax, eax
mov byte [ebp - 0x654], al
mov byte [ebx + edx], al
jmp 0x4266c3
mov edx, dword [ebx + 0x18]
cmp edx, 0x10
jb 0x426e60
mov eax, dword [ebx + 4]
mov dword [ebp - 0x69c], eax
jmp 0x426e69
lea eax, [ebx + 4]
mov dword [ebp - 0x69c], eax
add esp, 0xfffffff0
sub edx, esi
mov dword [esp + 4], edx
lea ebx, [esi + eax]
mov dword [esp], ebx
mov ebx, dword [ebp + 8]
lea edx, [esi + edi]
add edx, eax
mov eax, edi
mov dword [esp + 8], edx
neg eax
sub eax, esi
add eax, ecx
mov dword [esp + 0xc], eax
call fcn.0044abd5
add esp, 0x10
mov ecx, dword [ebx + 0x14]
mov eax, dword [ebx + 0x18]
sub ecx, edi
mov dword [ebx + 0x14], ecx
cmp eax, 0x10
jb 0x426ead
mov edx, dword [ebx + 4]
jmp 0x426eb0
lea edx, [ebx + 4]
mov ebx, dword [ebp - 0x78]
mov esi, dword [ebp - 0x70]
xor eax, eax
mov byte [ebp - 0x658], al
mov byte [edx + ecx], al
mov ecx, dword [ebx + 0x14]
jmp 0x426de9
push dword [ebp - 0x9c]
call fcn.0042e7a2
pop ecx
jmp 0x426513
mov ebx, dword [ebp - 0x44]
add eax, dword [ebx + 0x14]
mov dword [ebp - 0x48], eax
cmp eax, 0xfffffffe
mov dword [ebp - 0xc0], eax
jbe 0x426ef9
call fcn.00461214
mov eax, dword [ebp - 0xc0]
mov ecx, dword [ebx + 0x18]
cmp ecx, eax
jb 0x426f9a
test eax, eax
je 0x426f74
test eax, eax
jbe 0x4264fd
mov ebx, dword [ebp - 0x44]
mov ecx, dword [ebx + 0x18]
cmp ecx, 0x10
jb 0x426f20
mov esi, dword [ebx + 4]
jmp 0x426f23
lea esi, [ebx + 4]
mov edx, dword [ebp - 0x40]
mov eax, dword [edx + 0x18]
cmp eax, 0x10
jb 0x426f33
mov edx, dword [edx + 4]
jmp 0x426f36
add edx, 4
add edx, dword [ebp - 0x3c]
push dword [ebp - 0x38]
push edx
mov eax, dword [ebx + 0x14]
add esi, eax
sub ecx, eax
push ecx
push esi
call fcn.0044a80e
add esp, 0x10
mov edx, dword [ebp - 0x48]
mov eax, dword [ebx + 0x18]
mov dword [ebx + 0x14], edx
cmp eax, 0x10
jb 0x426f61
mov ebx, dword [ebx + 4]
jmp 0x426f64
add ebx, 4
xor eax, eax
mov byte [ebp - 0x21c], al
mov byte [ebx + edx], al
jmp 0x4264fd
mov edx, dword [ebx + 0x18]
mov dword [ebx + 0x14], 0
cmp edx, 0x10
jb 0x426f88
mov ebx, dword [ebx + 4]
jmp 0x426f8b
add ebx, 4
xor edx, edx
mov byte [ebp - 0x228], dl
mov byte [ebx], dl
jmp 0x426f08
mov edx, dword [ebx + 0x14]
mov dword [ebp - 0x674], ebx
mov ebx, eax
mov dword [ebp - 0x670], eax
or ebx, 0xf
cmp ebx, 0xfffffffe
mov dword [ebp - 0x66c], edx
mov dword [ebp - 0x67c], ebx
jbe 0x426fc9
mov dword [ebp - 0x67c], eax
mov ebx, eax
jmp 0x426fde
mov esi, ecx
shr esi, 1
mov eax, 0xaaaaaaab
mul ebx
shr edx, 1
cmp esi, edx
ja 0x42714d
mov dword [ebp - 4], 0xf
mov dword [ebp - 0x678], 0
inc ebx
jne 0x426ff6
xor ebx, ebx
jmp 0x427039
xor edx, edx
mov eax, 0xffffffff
div ebx
cmp eax, 1
jae 0x427039
mov dword [ebp - 0x6a4], 0
lea esi, [ebp - 0x6c8]
mov ecx, esi
lea eax, [ebp - 0x6a4]
push eax
call fcn.0044a5f3
mov dword [esi], vtable.std::bad_alloc.0
lea eax, [ebp - 0x6c8]
push 0x475b08
push eax
call fcn.0044ab8b
push edi
mov dword [esp], ebx
call fcn.0042e777
pop ecx
mov dword [ebp - 4], 0xe
mov dword [ebp - 0x678], eax
mov dword [ebp - 4], 0xe
nop
mov esi, dword [ebp - 0x66c]
test esi, esi
ja 0x42711a
mov edi, dword [ebp - 0x674]
mov eax, dword [edi + 0x18]
mov ebx, edi
cmp eax, 0x10
jae 0x427100
mov ecx, dword [ebp - 0x678]
mov edx, dword [ebp - 0x67c]
mov dword [ebx + 0x18], 0xf
xor eax, eax
mov byte [ebp - 0x224], al
mov byte [ebp - 0x220], al
mov dword [ebx + 0x14], eax
mov byte [ebx + 4], al
mov dword [edi + 4], ecx
mov dword [edi + 0x18], edx
mov dword [edi + 0x14], esi
add edi, 4
cmp edx, 0x10
jae 0x4270b4
mov ecx, edi
mov byte [ecx + esi], al
mov eax, dword [ebp - 0xc0]
jmp 0x426f08
push dword [edi + 4]
call fcn.0042e7a2
pop ecx
mov edi, dword [ebp - 0x674]
mov esi, dword [ebp - 0x66c]
jmp 0x42707a
mov edi, dword [ebp - 0x674]
mov eax, dword [edi + 0x18]
cmp eax, 0x10
jb 0x42712d
mov eax, dword [edi + 4]
jmp 0x427130
lea eax, [edi + 4]
mov edx, dword [ebp - 0x67c]
push esi
push eax
inc edx
push edx
push dword [ebp - 0x678]
call fcn.0044a80e
add esp, 0x10
jmp 0x42706c
mov eax, esi
neg eax
add eax, 0xfffffffe
cmp ecx, eax
ja 0x426fde
lea ebx, [ecx + esi]
mov dword [ebp - 0x67c], ebx
jmp 0x426fde
mov ebx, dword [ebp - 0x34]
mov eax, dword [ebx + 0x18]
cmp eax, 0x10
jb 0x42717a
mov edx, dword [ebx + 4]
jmp 0x42717d
lea edx, [ebx + 4]
mov esi, dword [ebp - 0x2c]
push esi
push dword [ebp - 0x30]
push eax
push edx
call fcn.0044a80e
add esp, 0x10
mov eax, dword [ebx + 0x18]
mov dword [ebx + 0x14], esi
cmp eax, 0x10
jb 0x42719e
mov ebx, dword [ebx + 4]
jmp 0x4271a1
add ebx, 4
xor eax, eax
mov byte [ebp - 0xbc], al
mov byte [ebx + esi], al
jmp 0x4264a7
mov dword [ebp - 0x8c], 0
cmp esi, 0x10
jb 0x4271c8
mov eax, dword [ebp - 0x9c]
jmp 0x4271ce
lea eax, [ebp - 0x9c]
mov byte [eax], 0
jmp 0x42649c
mov edx, dword [ebp - 0x8c]
mov dword [ebp - 0xc8], edi
mov ebx, edi
lea eax, [ebp - 0xa0]
or ebx, 0xf
cmp ebx, 0xfffffffe
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0xc4], edx
mov dword [ebp - 0xd4], ebx
jbe 0x42720e
mov dword [ebp - 0xd4], edi
mov ebx, edi
jmp 0x427223
mov ecx, esi
shr ecx, 1
mov eax, 0xaaaaaaab
mul ebx
shr edx, 1
cmp ecx, edx
ja 0x42738e
mov dword [ebp - 4], 0
mov dword [ebp - 0xd0], 0
inc ebx
jne 0x42723b
xor ebx, ebx
jmp 0x427280
xor edx, edx
mov eax, 0xffffffff
div ebx
cmp eax, 1
jae 0x427280
mov dword [ebp - 0x680], 0
lea eax, [ebp - 0x680]
push eax
lea ecx, [ebp - 0x690]
call fcn.0044a5f3
mov dword [ebp - method.std::bad_alloc.virtual_0], vtable.std::bad_alloc.0
lea eax, [ebp - 0x690]
push 0x475b08
push eax
call fcn.0044ab8b
push edi
mov dword [esp], ebx
call fcn.0042e777
pop ecx
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 0xd0], eax
mov dword [ebp - 4], 0xffffffff
nop
mov esi, dword [ebp - 0xc4]
test esi, esi
ja 0x42735b
mov edi, dword [ebp - 0xcc]
mov eax, dword [edi + 0x18]
mov ebx, edi
cmp eax, 0x10
jae 0x427341
mov ecx, dword [ebp - 0xd0]
mov edx, dword [ebp - 0xd4]
mov dword [ebx + 0x18], 0xf
xor eax, eax
mov byte [ebp - 0xb4], al
mov byte [ebp - 0xb8], al
mov dword [ebx + 0x14], eax
mov byte [ebx + 4], al
mov dword [edi + 4], ecx
mov dword [edi + 0x18], edx
mov dword [edi + 0x14], esi
add edi, 4
cmp edx, 0x10
jae 0x4272fb
mov ecx, edi
mov byte [ecx + esi], al
jmp 0x42649c
push dword [edi + 4]
call fcn.0042e7a2
pop ecx
mov edi, dword [ebp - 0xcc]
mov esi, dword [ebp - 0xc4]
jmp 0x4272c1
mov edi, dword [ebp - 0xcc]
mov eax, dword [edi + 0x18]
cmp eax, 0x10
jb 0x42736e
mov eax, dword [edi + 4]
jmp 0x427371
lea eax, [edi + 4]
mov edx, dword [ebp - 0xd4]
push esi
push eax
inc edx
push edx
push dword [ebp - 0xd0]
call fcn.0044a80e
add esp, 0x10
jmp 0x4272b3
mov eax, ecx
neg eax
add eax, 0xfffffffe
cmp esi, eax
ja 0x427223
lea ebx, [esi + ecx]
mov dword [ebp - 0xd4], ebx
jmp 0x427223
lea eax, [ebp - 0x9c]
mov edx, dword [ebp - 0x8c]
add edx, eax
lea eax, [ebp - 0x650]
cmp edx, eax
jbe 0x4263e4
mov eax, 1
jmp 0x4263e6