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

Disassembly:
mov eax, 0x17f4
call fcn.0043b8c0
mov eax, dword [0x45b480]
xor eax, esp
mov dword [esp + 0x17f0], eax
push ebx
push ebp
mov ebp, dword [esp + 0x1800]
push esi
mov esi, dword [esp + 0x180c]
push edi
mov edi, dword [esp + 0x180c]
xor ebx, ebx
mov dword [esp + 0x74], ebp
mov dword [esp + 0x44], edi
mov dword [esp + 0x58], esi
mov dword [esp + 0x18], ebx
call fcn.00440370
mov byte [eax], bl
cmp ebp, ebx
je 0x43eb5a
cmp dword [ebp + 0x10], ebx
je 0x43eb5a
cmp edi, ebx
je 0x43eb5a
cmp esi, ebx
je 0x43eb5a
mov edi, dword [edi]
cmp edi, ebx
je 0x43eb2b
mov eax, dword [esp + 0x44]
cmp dword [eax + 4], ebx
jbe 0x43eb2b
mov edx, dword [esi]
cmp edx, ebx
je 0x43eb2b
mov ecx, dword [esi + 4]
cmp ecx, ebx
jbe 0x43eb2b
mov esi, dword [esp + 0x1814]
cmp esi, ebx
je 0x43d727
cmp esi, dword [ebp + 0xc]
jle 0x43d733
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x1814], eax
mov esi, eax
cmp dword [ebp + 8], esi
jg 0x43ead8
cmp dword [ebp + 0x74], ebx
jbe 0x43d74a
cmp dword [ebp + 0x58], esi
jg 0x43ead8
mov eax, dword [esp + 0x44]
mov eax, dword [eax + 4]
add eax, edi
mov dword [esp + 0x30], eax
mov eax, ebp
sub eax, dword [ebp + 0x3c]
add ecx, edx
sub eax, 0x114
mov dword [esp + 0x40], eax
mov eax, dword [ebp + 0x64]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x28], ebp
lea esi, [esp + 0x80]
mov dword [esp + 0x80], ebp
mov dword [esp + 0x8c], 1
mov dword [esp + 0x90], ebx
mov dword [esp + 0xa8], edx
mov dword [esp + 0xac], ecx
cmp eax, ebx
jbe 0x43d7ce
cmp dword [ebp + 0x68], 0xffffffff
mov dword [esp + 0x94], eax
je 0x43d7c0
mov dword [esp + 0xb4], edi
add edi, eax
mov dword [esp + 0x1c], edi
jmp 0x43d7e3
mov eax, dword [ebp + 0x5c]
add eax, edi
mov dword [esp + 0xb4], eax
jmp 0x43d7e3
mov dword [esp + 0x94], ebx
mov dword [esp + 0x98], ebx
mov dword [esp + 0xb4], ebx
mov dword [esp + 0xb0], edi
mov dword [esp + 0xb8], 1
mov dword [esp + 0xa4], ebx
cmp dword [ebp + 0x74], ebx
jbe 0x43d89f
mov eax, dword [ebp + 0x70]
add eax, edx
mov ebx, ecx
sub ebx, eax
mov dword [esp + 0x10], eax
mov eax, dword [ebp + 0x74]
cmp ebx, eax
jge 0x43d84c
push eax
mov eax, dword [ebp + 0x70]
push eax
push ecx
push edx
push ebp
call fcn.0043d390
add esp, 4
push eax
push str.__host_buffer_NOT_enough:_meta__s___a_pszHostBase__p___a_pszHostEnd__p___version_indicator_offset__u__and_size__u_
push 0x400
call fcn.00440370
push eax
call fcn.00442785
add esp, 0x20
mov dword [esp + 0x18], 0x82010407
jmp 0x43d89d
sub eax, 2
je 0x43d88e
sub eax, 2
je 0x43d87f
xor ebx, ebx
sub eax, 4
je 0x43d86c
mov cl, byte [esp + 0x1814]
mov edx, dword [esp + 0x10]
mov byte [edx], cl
jmp 0x43d89f
mov eax, dword [esp + 0x1814]
mov ecx, dword [esp + 0x10]
cdq
mov dword [ecx], eax
mov dword [ecx + 4], edx
jmp 0x43d89f
mov eax, dword [esp + 0x1814]
mov ecx, dword [esp + 0x10]
mov dword [ecx], eax
jmp 0x43d89d
mov dx, word [esp + 0x1814]
mov eax, dword [esp + 0x10]
mov word [eax], dx
xor ebx, ebx
mov ebp, dword [esp + 0x18]
test ebp, ebp
jns 0x43d904
push 0x400
call fcn.00440370
push eax
call fcn.00436b9d
mov esi, eax
add esp, 8
cmp esi, 0x400
jge 0x43d8cd
mov eax, 0x400
sub eax, esi
jmp 0x43d8cf
xor eax, eax
push 0xf6
push str.lib_src_tdr_tdr_net.c
push str.___s:_d
push eax
call fcn.00440370
add eax, esi
push eax
call fcn.00442785
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x58]
mov dword [ecx + 4], ebx
add esp, 0x14
mov dword [edx + 4], ebx
mov eax, ebp
jmp 0x43eb7a
mov dword [esp + 0x38], 1
mov dword [esp + 0x84], ebx
mov dword [esp + 0x24], ebx
jmp 0x43d920
cmp dword [esp + 0x24], 0
je 0x43dabe
mov ecx, dword [esi + 0x14]
mov dword [esp + 0x24], 0
test ecx, ecx
je 0x43da5f
mov eax, edi
sub eax, dword [esi + 0x30]
cdq
mov ebx, eax
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x70], edx
cmp edx, dword [ecx*8 + 0x45cf1c]
jg 0x43e825
jl 0x43d96a
cmp ebx, dword [ecx*8 + 0x45cf18]
ja 0x43e825
sub ecx, 2
je 0x43da55
sub ecx, 2
je 0x43da2a
sub ecx, 4
je 0x43d98b
mov eax, dword [esi + 0x34]
mov byte [eax], bl
jmp 0x43da5f
mov edi, ebx
mov ebp, edx
shrd edi, ebp, 0x10
mov eax, edx
and eax, 0xff0000
xor ecx, ecx
or ecx, edi
shr ebp, 0x10
or eax, ebp
shrd ecx, eax, 0x10
shr eax, 0x10
mov ebp, edx
xor edi, edi
or ecx, edi
and ebp, 0xff00
or eax, ebp
movzx ebp, byte [esp + 0x70]
shrd ecx, eax, 0x10
shr eax, 0x10
or eax, ebp
or ecx, edi
shrd ecx, eax, 8
shr eax, 8
mov edi, eax
mov eax, ebx
shld edx, eax, 0x10
shl eax, 0x10
and ebx, 0xff00
or eax, ebx
mov ebx, dword [esp + 0x6c]
xor ebp, ebp
or edx, ebp
shld edx, eax, 0x10
shl eax, 0x10
and ebx, 0xff0000
or eax, ebx
or edx, ebp
shld edx, eax, 0x10
shl eax, 0x10
mov ebx, eax
mov eax, dword [esp + 0x6c]
and eax, 0xff000000
or ebx, eax
mov eax, dword [esi + 0x34]
or edx, ebp
shld edx, ebx, 8
shl ebx, 8
or ecx, ebx
or edi, edx
mov dword [eax], ecx
mov dword [eax + 4], edi
mov edi, dword [esp + 0x1c]
jmp 0x43da5f
mov ecx, ebx
mov edx, ebx
mov eax, ebx
and ecx, 0xff0000
shr edx, 0x10
shl eax, 0x10
and ebx, 0xff00
or ecx, edx
mov edx, dword [esi + 0x34]
or eax, ebx
shr ecx, 8
shl eax, 8
or ecx, eax
mov dword [edx], ecx
jmp 0x43da5f
mov eax, dword [esi + 0x34]
rol bx, 8
mov word [eax], bx
cmp dword [esi + 0xc], 0
jle 0x43da8f
cmp edi, dword [esp + 0x30]
ja 0x43e873
cmp dword [esi + 0x14], 0
jbe 0x43da8c
mov eax, dword [esi + 0x18]
test eax, eax
jns 0x43da87
mov dword [esi + 0x34], edi
sub edi, eax
mov dword [esp + 0x1c], edi
jmp 0x43da8c
add eax, edi
mov dword [esi + 0x34], eax
mov dword [esi + 0x30], edi
cmp dword [esp + 0x38], 1
jle 0x43dabe
mov eax, dword [esi + 4]
test byte [eax + 0x44], 4
je 0x43daaa
mov ecx, dword [eax + 0x18]
add dword [esi - 0x98], ecx
jmp 0x43dab7
mov edx, dword [esp + 0x28]
mov eax, dword [edx + 0x1c]
add dword [esi - 0x98], eax
mov dword [esi + 0x24], 0
mov ebp, dword [esi + 0xc]
test ebp, ebp
jg 0x43db28
mov eax, dword [esp + 0x38]
dec eax
sub esi, 0xbc
mov dword [esp + 0x38], eax
test eax, eax
jle 0x43ea60
mov eax, dword [esi]
cmp dword [eax + 0x10], 0
mov dword [esp + 0x28], eax
jne 0x43dafd
dec dword [esi + 0xc]
mov ecx, dword [eax + 0x1c]
add dword [esi + 0x28], ecx
mov edx, dword [esi + 0x38]
mov dword [esp + 0x24], edx
jmp 0x43e815
inc dword [esi + 0x10]
mov ecx, dword [esi + 0x10]
cmp ecx, dword [eax + 0x2c]
jl 0x43e815
mov eax, dword [eax + 0x1c]
mov ecx, dword [esi + 0x38]
dec dword [esi + 0xc]
add dword [esi + 0x28], eax
mov dword [esi + 0x10], 0
mov dword [esp + 0x24], ecx
jmp 0x43e815
mov edx, dword [esi + 0x10]
mov ecx, dword [esp + 0x28]
mov eax, edx
imul eax, eax, 0xb4
lea ebx, [eax + ecx + 0xb8]
mov eax, dword [esp + 0x1814]
mov dword [esp + 0x14], ebx
cmp dword [ebx + 4], eax
jle 0x43db9b
mov eax, ecx
cmp dword [eax + 0x10], 0
jne 0x43db6c
mov ecx, dword [eax + 0x1c]
dec ebp
mov dword [esi + 0xc], ebp
add dword [esi + 0x28], ecx
mov edx, dword [esi + 0x38]
mov dword [esp + 0x24], edx
jmp 0x43e815
lea ecx, [edx + 1]
mov dword [esi + 0x10], ecx
cmp ecx, dword [eax + 0x2c]
jl 0x43e815
mov ecx, dword [esi + 0xc]
mov eax, dword [eax + 0x1c]
dec ecx
add dword [esi + 0x28], eax
mov dword [esi + 0xc], ecx
mov ecx, dword [esi + 0x38]
mov dword [esi + 0x10], 0
mov dword [esp + 0x24], ecx
jmp 0x43e815
movzx ecx, word [ebx + 0x44]
test cl, 2
je 0x43dbdf
mov eax, dword [esp + 0x28]
cmp dword [eax + 0x10], 0
jne 0x43dbc4
mov edx, dword [eax + 0x1c]
mov eax, dword [esi + 0x38]
dec ebp
add dword [esi + 0x28], edx
mov dword [esi + 0xc], ebp
mov dword [esp + 0x24], eax
jmp 0x43e815
lea ecx, [edx + 1]
mov dword [esi + 0x10], ecx
cmp ecx, dword [eax + 0x2c]
jl 0x43e815
mov dword [esi + 0x10], 0
jmp 0x43dce0
mov eax, dword [ebx + 0x58]
test eax, eax
je 0x43dc3b
mov edx, dword [ebx + 0x5c]
add edx, dword [esi + 0x28]
sub eax, 2
je 0x43dc2b
sub eax, 2
je 0x43dc1c
sub eax, 4
je 0x43dc0b
movzx eax, byte [edx]
cdq
mov ebp, eax
mov dword [esp + 0x4c], edx
mov dword [esp + 0x3c], ebp
jmp 0x43dc44
mov eax, dword [edx]
mov edx, dword [edx + 4]
mov ebp, eax
mov dword [esp + 0x4c], edx
mov dword [esp + 0x3c], ebp
jmp 0x43dc44
mov eax, dword [edx]
cdq
mov ebp, eax
mov dword [esp + 0x4c], edx
mov dword [esp + 0x3c], ebp
jmp 0x43dc44
movzx eax, word [edx]
cdq
mov ebp, eax
mov dword [esp + 0x4c], edx
mov dword [esp + 0x3c], ebp
jmp 0x43dc44
mov eax, dword [ebx + 0x24]
mov dword [esp + 0x3c], eax
mov ebp, eax
xor edx, edx
cmp ebp, edx
jl 0x43e9e4
mov eax, dword [ebx + 0x24]
cmp eax, ebp
jge 0x43dc5d
cmp eax, edx
jg 0x43e9e4
cmp ebp, edx
jg 0x43dcf9
mov ecx, dword [ebx + 0x50]
cmp ecx, edx
jbe 0x43dcab
cmp dword [ebx + 0x54], 0xffffffff
jne 0x43dcab
mov eax, dword [ebx + 0x48]
cmp eax, dword [ebx + 0x28]
jge 0x43dcab
sub ecx, 2
je 0x43dca2
sub ecx, 2
je 0x43dc9a
sub ecx, 4
mov ecx, dword [esi + 0x30]
je 0x43dc91
mov byte [eax + ecx], dl
jmp 0x43dcab
mov dword [eax + ecx], edx
mov dword [eax + ecx + 4], edx
jmp 0x43dcab
mov ecx, dword [esi + 0x30]
mov dword [eax + ecx], edx
jmp 0x43dcab
mov ecx, dword [esi + 0x30]
xor ebx, ebx
mov word [eax + ecx], bx
mov eax, dword [esp + 0x28]
cmp dword [eax + 0x10], edx
jne 0x43dccd
mov ecx, dword [esi + 0xc]
mov edx, dword [eax + 0x1c]
mov eax, dword [esi + 0x38]
dec ecx
add dword [esi + 0x28], edx
mov dword [esi + 0xc], ecx
mov dword [esp + 0x24], eax
jmp 0x43e815
mov ecx, dword [esi + 0x10]
inc ecx
mov dword [esi + 0x10], ecx
cmp ecx, dword [eax + 0x2c]
jl 0x43e815
mov dword [esi + 0x10], edx
mov ecx, dword [esi + 0xc]
dec ecx
mov dword [esi + 0xc], ecx
mov ecx, dword [eax + 0x1c]
add dword [esi + 0x28], ecx
mov edx, dword [esi + 0x38]
mov dword [esp + 0x24], edx
jmp 0x43e815
mov edx, dword [esi + 0x28]
mov ebp, dword [ebx + 0x2c]
add ebp, edx
mov dword [esp + 0x2c], ebp
test cl, 4
je 0x43dd30
cmp dword [ebx + 8], 1
mov ebp, dword [ebp]
mov dword [esp + 0x2c], ebp
jle 0x43dd1e
mov eax, dword [ebx + 0x14]
add eax, ebp
jmp 0x43dd33
mov eax, dword [ebx + 0x78]
mov ecx, dword [esp + 0x40]
mov eax, dword [eax + ecx + 0x130]
add eax, ebp
jmp 0x43dd33
mov eax, dword [esi + 0x2c]
mov dword [esp + 0x34], eax
mov eax, dword [ebx + 8]
cmp eax, 1
jle 0x43e451
sub eax, 0x15
je 0x43e168
dec eax
je 0x43df34
mov ecx, dword [ebx + 0x18]
mov eax, dword [esp + 0x3c]
mov edx, ecx
imul edx, eax
add edx, ebp
cmp edx, dword [esp + 0x34]
jbe 0x43dd94
push eax
mov eax, dword [esp + 0x38]
push ecx
push eax
push ebp
push str.__host_buffer_NOT_enough:_host_start__p__host_end__p__unit_size__u__count__d_
push 0x400
call fcn.00440370
push eax
call fcn.00442785
add esp, 0x1c
mov dword [esp + 0x18], 0x82010407
jmp 0x43e3cc
mov ebx, dword [ebx + 0x1c]
mov ecx, ebx
imul ecx, eax
add ecx, edi
cmp ecx, dword [esp + 0x30]
jbe 0x43ddb6
mov edx, dword [esp + 0x30]
push eax
push ebx
push edx
push edi
push str.__net_buffer_NOT_enough:_net_start__p__net_end__p__unit_size__u__count__d_
jmp 0x43e37f
dec ebx
je 0x43def4
dec ebx
je 0x43ded0
sub ebx, 2
je 0x43de8c
mov dword [esp + 0x20], eax
mov eax, dword [ebp]
mov ebp, dword [ebp + 4]
mov ecx, eax
mov edx, ebp
shld edx, ecx, 0x10
shl ecx, 0x10
mov edi, eax
and edi, 0xff00
or ecx, edi
xor ebx, ebx
or edx, ebx
shld edx, ecx, 0x10
or edx, ebx
mov edi, eax
shl ecx, 0x10
and edi, 0xff0000
or ecx, edi
shld edx, ecx, 0x10
or ebx, edx
mov edi, eax
mov edx, ebp
shrd eax, edx, 0x10
shr edx, 0x10
shl ecx, 0x10
and edi, 0xff000000
or ecx, edi
and edx, 0xff
xor eax, eax
mov dword [esp + 0x7c], ebp
xor edi, edi
or eax, edi
and ebp, 0xff00
or edx, ebp
movzx ebp, byte [esp + 0x7c]
shrd eax, edx, 0x10
shr edx, 0x10
shld ebx, ecx, 8
or eax, edi
mov edi, dword [esp + 0x1c]
or edx, ebp
mov ebp, dword [esp + 0x2c]
shrd eax, edx, 8
shl ecx, 8
or ecx, eax
movzx eax, byte [ebp + 7]
shr edx, 8
or ebx, edx
cdq
or ecx, eax
or ebx, edx
mov dword [edi], ecx
mov dword [edi + 4], ebx
add edi, 8
add ebp, 8
dec dword [esp + 0x20]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x2c], ebp
jne 0x43ddd1
jmp 0x43e3cc
mov ecx, eax
mov edi, edi
mov eax, dword [ebp]
mov edx, eax
mov ebx, eax
and edx, 0xff00
shl ebx, 0x10
or edx, ebx
shr eax, 8
shl edx, 8
and eax, 0xff00
or edx, eax
movzx eax, byte [ebp + 3]
or edx, eax
mov dword [edi], edx
add edi, 4
add ebp, 4
dec ecx
jne 0x43de90
mov dword [esp + 0x1c], edi
jmp 0x43e3cc
movzx ecx, byte [ebp + 1]
mov dx, word [ebp]
shl dx, 8
or cx, dx
mov word [edi], cx
add edi, 2
add ebp, 2
dec eax
jne 0x43ded0
mov dword [esp + 0x1c], edi
jmp 0x43e3cc
cmp eax, 0x40
jg 0x43df18
test eax, eax
je 0x43e3cc
mov eax, dword [esp + 0x3c]
mov cl, byte [ebp]
mov byte [edi], cl
inc edi
inc ebp
dec eax
jne 0x43df05
mov dword [esp + 0x1c], edi
jmp 0x43e3cc
push eax
push ebp
push edi
call fcn.00434eb0
mov eax, dword [esp + 0x48]
add esp, 0xc
add ebp, eax
add edi, eax
mov dword [esp + 0x1c], edi
jmp 0x43e3cc
mov dword [esp + 0x20], 0
lea esp, [esp]
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x20]
test eax, eax
jne 0x43df51
mov eax, dword [esp + 0x34]
sub eax, ebp
push eax
push ebp
mov dword [esp + 0x18], eax
call fcn.004403b0
lea ebx, [eax + eax + 2]
add esp, 8
mov dword [esp + 0x48], ebx
cmp ebx, dword [esp + 0x10]
jg 0x43e123
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 0x50]
mov edx, dword [esp + 0x30]
add eax, ebx
sub edx, edi
cmp edx, eax
jl 0x43e141
mov eax, ebx
cdq
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x50]
mov ecx, edx
mov dword [esp + 0x68], ecx
cmp ecx, dword [eax*8 + 0x45cf1c]
jg 0x43e154
jl 0x43dfc3
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x50]
mov edx, dword [esp + 0x64]
cmp edx, dword [eax*8 + 0x45cf18]
ja 0x43e154
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x50]
sub eax, 2
je 0x43e0bc
sub eax, 2
je 0x43e093
sub eax, 4
je 0x43dfe8
mov byte [edi], bl
jmp 0x43e0c6
mov edi, dword [esp + 0x64]
mov eax, ebx
and eax, 0xff00
cdq
mov ebp, ecx
shld ebp, edi, 0x10
shl edi, 0x10
or eax, edi
or ebp, edx
shld ebp, eax, 0x10
shl eax, 0x10
mov edi, eax
mov eax, ebx
and eax, 0xff0000
cdq
or edi, eax
mov eax, dword [esp + 0x64]
or ebp, edx
shld ebp, edi, 0x10
xor ebx, ebx
or ebp, ebx
shl edi, 0x10
mov edx, eax
and edx, 0xff000000
or edi, edx
shld ebp, edi, 8
shl edi, 8
mov ebx, ecx
shrd eax, ecx, 0x10
and ebx, 0xff0000
mov edx, edi
xor edi, edi
or edi, eax
mov eax, dword [esp + 0x68]
shr ecx, 0x10
or ebx, ecx
shrd edi, ebx, 0x10
shr ebx, 0x10
xor ecx, ecx
or edi, ecx
movzx ecx, byte [esp + 0x68]
and eax, 0xff00
or ebx, eax
shrd edi, ebx, 0x10
shr ebx, 0x10
xor eax, eax
or ebx, ecx
or edi, eax
shrd edi, ebx, 8
shr ebx, 8
or edx, edi
mov edi, dword [esp + 0x1c]
or ebp, ebx
mov ebx, dword [esp + 0x48]
mov dword [edi + 4], ebp
mov ebp, dword [esp + 0x2c]
mov dword [edi], edx
jmp 0x43e0c6
mov edx, ebx
and edx, 0xff0000
mov eax, ebx
shr eax, 0x10
or edx, eax
mov ecx, ebx
shl ecx, 0x10
mov eax, ebx
and eax, 0xff00
or ecx, eax
shr edx, 8
shl ecx, 8
or edx, ecx
mov dword [edi], edx
jmp 0x43e0c6
mov cx, bx
rol cx, 8
mov word [edi], cx
mov edx, dword [esp + 0x14]
add edi, dword [edx + 0x50]
mov dword [esp + 0x1c], edi
cmp ebx, 0x40
ja 0x43e0ec
test ebx, ebx
je 0x43e0ff
mov eax, ebx
lea esp, [esp]
mov cl, byte [ebp]
mov byte [edi], cl
inc edi
inc ebp
dec eax
jne 0x43e0e0
jmp 0x43e0fb
push ebx
push ebp
push edi
call fcn.00434eb0
add esp, 0xc
add ebp, ebx
add edi, ebx
mov dword [esp + 0x1c], edi
mov eax, dword [esp + 0x10]
sub eax, ebx
add ebp, eax
mov eax, dword [esp + 0x20]
inc eax
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x20], eax
cmp eax, dword [esp + 0x3c]
jl 0x43df40
jmp 0x43e3cc
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x20]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x10]
push eax
push ecx
push edi
push edx
push ebx
push str.__wstring_length_error:_real_len__d__available_len__d__net_start__p__net_end__p__custom_size__u_
jmp 0x43e34e
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x50]
push eax
push edi
push edx
jmp 0x43e379
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x50]
mov edx, dword [ecx*8 + 0x45cf18]
push edx
jmp 0x43e3ab
mov dword [esp + 0x20], 0
jmp 0x43e176
mov ebx, dword [esp + 0x14]
mov ebx, dword [ebx + 0x20]
test ebx, ebx
jne 0x43e189
mov eax, dword [esp + 0x34]
sub eax, ebp
mov dword [esp + 0x10], eax
jmp 0x43e18d
mov dword [esp + 0x10], ebx
mov eax, dword [esp + 0x10]
push eax
push ebp
call fcn.00436b9d
mov edx, dword [esp + 0x38]
mov ebx, eax
add esp, 8
cmp ebx, dword [esp + 0x10]
jge 0x43e339
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 0x50]
inc ebx
add eax, ebx
sub edx, edi
mov dword [esp + 0x48], ebx
cmp edx, eax
jl 0x43e36b
mov eax, ebx
cdq
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x50]
mov ecx, edx
mov dword [esp + 0x60], ecx
cmp ecx, dword [eax*8 + 0x45cf1c]
jg 0x43e39c
jl 0x43e1fe
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x50]
mov edx, dword [esp + 0x5c]
cmp edx, dword [eax*8 + 0x45cf18]
ja 0x43e39c
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x50]
sub eax, 2
je 0x43e2f7
sub eax, 2
je 0x43e2ce
sub eax, 4
je 0x43e223
mov byte [edi], bl
jmp 0x43e301
mov edi, dword [esp + 0x5c]
mov eax, ebx
and eax, 0xff00
cdq
mov ebp, ecx
shld ebp, edi, 0x10
shl edi, 0x10
or eax, edi
or ebp, edx
shld ebp, eax, 0x10
shl eax, 0x10
mov edi, eax
mov eax, ebx
and eax, 0xff0000
cdq
or edi, eax
mov eax, dword [esp + 0x5c]
or ebp, edx
shld ebp, edi, 0x10
xor ebx, ebx
or ebp, ebx
shl edi, 0x10
mov edx, eax
and edx, 0xff000000
or edi, edx
shld ebp, edi, 8
shl edi, 8
mov ebx, ecx
shrd eax, ecx, 0x10
and ebx, 0xff0000
mov edx, edi
xor edi, edi
or edi, eax
mov eax, dword [esp + 0x60]
shr ecx, 0x10
or ebx, ecx
shrd edi, ebx, 0x10
shr ebx, 0x10
xor ecx, ecx
or edi, ecx
movzx ecx, byte [esp + 0x60]
and eax, 0xff00
or ebx, eax
shrd edi, ebx, 0x10
shr ebx, 0x10
xor eax, eax
or ebx, ecx
or edi, eax
shrd edi, ebx, 8
shr ebx, 8
or edx, edi
mov edi, dword [esp + 0x1c]
or ebp, ebx
mov ebx, dword [esp + 0x48]
mov dword [edi + 4], ebp
mov ebp, dword [esp + 0x2c]
mov dword [edi], edx
jmp 0x43e301
mov edx, ebx
and edx, 0xff0000
mov eax, ebx
shr eax, 0x10
or edx, eax
mov ecx, ebx
shl ecx, 0x10
mov eax, ebx
and eax, 0xff00
or ecx, eax
shr edx, 8
shl ecx, 8
or edx, ecx
mov dword [edi], edx
jmp 0x43e301
mov cx, bx
rol cx, 8
mov word [edi], cx
mov edx, dword [esp + 0x14]
add edi, dword [edx + 0x50]
push ebx
push ebp
push edi
call fcn.00434eb0
mov eax, dword [esp + 0x2c]
add ebp, dword [esp + 0x1c]
inc eax
add edi, ebx
add esp, 0xc
mov dword [esp + 0x1c], edi
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x20], eax
cmp eax, dword [esp + 0x3c]
jl 0x43e172
jmp 0x43e3cc
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 0x20]
mov eax, dword [esp + 0x10]
push ecx
push edx
push edi
push eax
push ebx
push str.__string_length_error:_real_len__d__available_len__d__net_start__p__net_end__p__custom_size__u_
push 0x400
call fcn.00440370
push eax
call fcn.00442785
add esp, 0x20
mov dword [esp + 0x18], 0x82010406
jmp 0x43e3cc
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x50]
push ecx
push edi
push eax
push ebx
push str.__net_buffer_NOT_enough:_real_len__d__sizeinfo_size__u__net_start__p__net_end__p_
push 0x400
call fcn.00440370
push eax
call fcn.00442785
add esp, 0x1c
mov dword [esp + 0x18], 0x82010402
jmp 0x43e3cc
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x50]
mov eax, dword [edx*8 + 0x45cf18]
push eax
push ebx
push str.__sizeinfo_numeric_overflow:_real_value__d__value_limit__u_
push 0x400
call fcn.00440370
push eax
call fcn.00442785
mov dword [esp + 0x2c], 0x82010479
add esp, 0x14
test dword [esp + 0x18], 0x80000000
jne 0x43e8bb
mov eax, dword [esp + 0x14]
test byte [eax + 0x44], 4
je 0x43e3ee
mov ecx, dword [eax + 0x2c]
add ecx, ecx
mov dword [esi + 0x24], ecx
jmp 0x43e3f4
sub ebp, dword [esi + 0x28]
mov dword [esi + 0x24], ebp
mov ecx, dword [esp + 0x28]
cmp dword [ecx + 0x10], 0
jne 0x43e41a
mov eax, dword [esi + 0xc]
mov edx, dword [ecx + 0x1c]
dec eax
add edx, dword [esi + 0x28]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x38]
mov dword [esi + 0x28], edx
mov dword [esp + 0x24], eax
jmp 0x43e815
mov eax, dword [esi + 0x10]
inc eax
mov dword [esi + 0x10], eax
cmp eax, dword [ecx + 0x2c]
jl 0x43e815
mov eax, dword [esi + 0xc]
mov ecx, dword [esp + 0x28]
mov edx, dword [ecx + 0x1c]
dec eax
add edx, dword [esi + 0x28]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x38]
mov dword [esi + 0x10], 0
mov dword [esi + 0x28], edx
mov dword [esp + 0x24], eax
jmp 0x43e815
cmp dword [esp + 0x38], 0x20
jge 0x43e921
test eax, eax
jne 0x43e688
mov eax, dword [ebx + 0x68]
mov ecx, dword [ebx + 0x64]
add eax, edx
sub ecx, 2
je 0x43e48f
sub ecx, 2
je 0x43e48b
sub ecx, 4
je 0x43e480
movzx eax, byte [eax]
jmp 0x43e492
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov dword [esp + 0x50], ecx
jmp 0x43e497
mov eax, dword [eax]
jmp 0x43e492
movzx eax, word [eax]
cdq
mov dword [esp + 0x50], eax
mov eax, dword [ebx + 0x78]
mov ecx, dword [esp + 0x40]
lea ebx, [eax + ecx + 0x114]
mov ecx, dword [ebx + 0x138]
mov eax, dword [esp + 0x50]
mov dword [esp + 0x54], edx
xor edx, edx
cmp ecx, dword [ebx + 0x134]
mov dword [esp + 0x28], ebx
setg dl
dec edx
sub eax, ecx
mov dword [esp + 0x20], edx
js 0x43e4fe
cmp eax, dword [ebx + 0x2c]
jge 0x43e4fe
mov ecx, eax
imul ecx, ecx, 0xb4
add ecx, ebx
mov dword [esp + 0x48], ecx
mov ecx, dword [ecx + 0x138]
cmp ecx, dword [esp + 0x50]
jne 0x43e4fa
mov edx, dword [esp + 0x48]
cmp ecx, dword [edx + 0x134]
jle 0x43e5b0
mov edx, dword [esp + 0x20]
mov eax, dword [ebx + 0x2c]
cmp eax, 0x10
jge 0x43e550
mov dword [esp + 0x10], 0
test eax, eax
jle 0x43e5b2
lea eax, [ebx + 0x134]
jmp 0x43e524
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x50]
cmp dword [eax + 4], ecx
jg 0x43e531
cmp ecx, dword [eax]
jle 0x43e54a
mov ecx, dword [esp + 0x10]
inc ecx
add eax, 0xb4
mov dword [esp + 0x10], ecx
mov dword [esp + 0x48], eax
cmp ecx, dword [ebx + 0x2c]
jl 0x43e520
jmp 0x43e5b2
mov edx, dword [esp + 0x10]
jmp 0x43e5b2
xor ecx, ecx
dec eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x2c], eax
js 0x43e5b2
lea ecx, [ecx]
add eax, ecx
sar eax, 1
mov ecx, eax
imul ecx, ecx, 0xb4
mov edx, dword [ecx + ebx + 0x138]
mov ecx, dword [ecx + ebx + 0x134]
mov dword [esp + 0x48], ecx
cmp edx, ecx
jg 0x43e59b
mov ecx, dword [esp + 0x50]
cmp ecx, edx
jge 0x43e595
mov ecx, dword [esp + 0x10]
dec eax
mov dword [esp + 0x2c], eax
jmp 0x43e5a6
cmp ecx, dword [esp + 0x48]
jle 0x43e5b0
lea ecx, [eax + 1]
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x10], ecx
cmp ecx, eax
jle 0x43e560
mov edx, dword [esp + 0x20]
jmp 0x43e5b2
mov edx, eax
cmp edx, 0xffffffff
je 0x43e5d3
mov eax, edx
imul eax, eax, 0xb4
mov ecx, dword [eax + ebx + 0xbc]
cmp ecx, dword [esp + 0x1814]
jle 0x43e69c
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x50]
test ecx, ecx
je 0x43e62d
cmp dword [edx + 0x54], 0xffffffff
jne 0x43e62d
mov eax, dword [edx + 0x48]
cmp eax, dword [edx + 0x28]
jge 0x43e62d
sub ecx, 2
je 0x43e624
sub ecx, 2
je 0x43e618
sub ecx, 4
je 0x43e604
mov edx, dword [esi + 0x30]
mov byte [eax + edx], 0
jmp 0x43e62d
mov ecx, dword [esi + 0x30]
mov dword [eax + ecx], 0
mov dword [eax + ecx + 4], 0
jmp 0x43e62d
mov ecx, dword [esi + 0x30]
mov dword [eax + ecx], 0
jmp 0x43e62d
mov edx, dword [esi + 0x30]
xor ecx, ecx
mov word [eax + edx], cx
mov eax, dword [esi]
cmp dword [eax + 0x10], 0
mov dword [esp + 0x28], eax
jne 0x43e655
mov ecx, dword [esi + 0xc]
mov edx, dword [eax + 0x1c]
mov eax, dword [esi + 0x38]
dec ecx
add edx, dword [esi + 0x28]
mov dword [esi + 0xc], ecx
mov dword [esi + 0x28], edx
mov dword [esp + 0x24], eax
jmp 0x43e815
mov ecx, dword [esi + 0x10]
inc ecx
mov dword [esi + 0x10], ecx
cmp ecx, dword [eax + 0x2c]
jl 0x43e815
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 0x38]
dec ecx
mov dword [esi + 0xc], ecx
mov ecx, dword [eax + 0x1c]
add ecx, dword [esi + 0x28]
mov dword [esi + 0x10], 0
mov dword [esi + 0x28], ecx
mov dword [esp + 0x24], edx
jmp 0x43e815
mov eax, dword [ebx + 0x78]
mov ecx, dword [esp + 0x40]
lea ebx, [eax + ecx + 0x114]
mov dword [esp + 0x28], ebx
xor edx, edx
mov eax, dword [esp + 0x1814]
cmp dword [ebx + 0x58], eax
jg 0x43e95c
inc dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
add esi, 0xbc
xor eax, eax
mov dword [esi + 0x10], edx
mov edx, dword [ebx + 0x64]
mov dword [esi + 0x24], eax
mov dword [esi], ebx
mov dword [esi + 0xc], ecx
mov dword [esi + 0x28], ebp
mov dword [esi + 0x30], edi
cmp edx, eax
jbe 0x43e705
cmp dword [ebx + 0x68], 0xffffffff
mov dword [esi + 0x14], edx
je 0x43e6f3
mov ecx, dword [esp + 0x14]
mov eax, edx
neg eax
mov dword [esi + 0x34], edi
add edi, edx
mov dword [esi + 0x18], eax
mov dword [esp + 0x1c], edi
jmp 0x43e74f
mov eax, dword [ebx + 0x5c]
lea ecx, [eax + edi]
mov dword [esi + 0x34], ecx
mov ecx, dword [esp + 0x14]
mov dword [esi + 0x18], eax
jmp 0x43e74f
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x50]
cmp edx, eax
jbe 0x43e74c
cmp dword [ecx + 0x54], 0xffffffff
mov dword [esi + 0x14], edx
je 0x43e729
mov dword [esi + 0x34], edi
add edi, edx
neg edx
mov dword [esp + 0x1c], edi
mov dword [esi + 0x18], edx
jmp 0x43e74f
mov eax, dword [ecx + 0x48]
mov edx, dword [ecx + 0x28]
cmp eax, edx
jl 0x43e73f
sub eax, edx
mov dword [esi + 0x18], eax
add eax, edi
mov dword [esi + 0x34], eax
jmp 0x43e74f
mov edx, dword [esi - 0x8c]
add edx, eax
mov dword [esi + 0x34], edx
jmp 0x43e74f
mov dword [esi + 0x14], eax
mov edx, dword [ebx + 0x74]
mov eax, dword [esp + 0x34]
mov dword [esi + 0x30], edi
mov dword [esi + 0x2c], eax
mov dword [esi + 4], ecx
mov dword [esi + 0x38], 1
test edx, edx
je 0x43e807
mov ecx, dword [ebx + 0x70]
lea eax, [ecx + ebp]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x34]
sub eax, dword [esp + 0x10]
cmp eax, edx
jge 0x43e7b8
push edx
push ecx
mov ecx, dword [esp + 0x3c]
push ecx
push ebp
push ebx
call fcn.0043d390
add esp, 4
push eax
push str.__host_buffer_NOT_enough:_meta__s___a_pszHostBase__p___a_pszHostEnd__p___version_indicator_offset__u__and_size__u_
push 0x400
call fcn.00440370
push eax
call fcn.00442785
add esp, 0x20
mov dword [esp + 0x18], 0x82010407
jmp 0x43e807
sub edx, 2
je 0x43e7f8
sub edx, 2
je 0x43e7e9
sub edx, 4
je 0x43e7d6
mov edx, dword [esp + 0x10]
mov al, byte [esp + 0x1814]
mov byte [edx], al
jmp 0x43e807
mov eax, dword [esp + 0x1814]
mov ecx, dword [esp + 0x10]
cdq
mov dword [ecx], eax
mov dword [ecx + 4], edx
jmp 0x43e807
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x1814]
mov dword [ecx], edx
jmp 0x43e807
mov eax, dword [esp + 0x10]
mov cx, word [esp + 0x1814]
mov word [eax], cx
test dword [esp + 0x18], 0x80000000
jne 0x43e997
cmp dword [esp + 0x38], 0
jg 0x43d920
jmp 0x43ea60
mov edx, dword [esi + 0xc]
mov eax, dword [esi]
push edx
push eax
call fcn.0043d390
mov ecx, dword [esi + 4]
add esp, 4
push eax
push ecx
call fcn.0043d4c0
mov edx, dword [esi + 0x14]
add esp, 4
push eax
mov eax, dword [edx*8 + 0x45cf18]
push eax
push ebx
push str.__sizeinfo_numeric_overflow:_real_value__d__value_limit__u__entry__s__meta__s__unpacked_entry_count__d_
push 0x400
call fcn.00440370
push eax
call fcn.00442785
add esp, 0x20
mov dword [esp + 0x18], 0x82010479
jmp 0x43ea60
mov ecx, dword [esi + 0xc]
mov edx, dword [esi]
push ecx
push edx
call fcn.0043d390
add esp, 4
push eax
mov eax, dword [esi + 4]
push eax
call fcn.0043d4c0
mov ecx, dword [esp + 0x3c]
add esp, 4
push eax
push ecx
push edi
push str.__net_buffer_NOT_enough:_pszNetStart__p__pszNetEnd__p__entry__s__meta__s__unpacked_entry_count__d_
push 0x400
call fcn.00440370
push eax
call fcn.00442785
add esp, 0x20
mov dword [esp + 0x18], 0x82010402
jmp 0x43ea60
push 0x400
call fcn.00440370
push eax
call fcn.00436b9d
mov ebx, eax
add esp, 8
cmp ebx, 0x400
jge 0x43e8e1
mov esi, 0x400
sub esi, ebx
jmp 0x43e8e3
xor esi, esi
mov edx, dword [esp + 0x28]
push 0x195
push str.lib_src_tdr_tdr_net.c
push edx
call fcn.0043d390
add esp, 4
push eax
mov eax, dword [esp + 0x20]
push eax
call fcn.0043d4c0
add esp, 4
push eax
push str.__entry__s__of_meta__s___s:_d
push esi
call fcn.00440370
add eax, ebx
push eax
call fcn.00442785
jmp 0x43ea5d
mov ecx, dword [esp + 0x74]
push 0x20
push ecx
call fcn.0043d390
add esp, 4
push eax
push str.__meta__s__is_too_complex__contains_more_than__d_layers_of_children
push 0x400
call fcn.00440370
push eax
call fcn.00442785
mov edx, dword [ebx + 0x2c]
add esp, 0x14
mov dword [esp + 0x18], 0x82010404
mov dword [esi + 0x24], edx
jmp 0x43ea60
push ebx
call fcn.0043d390
mov ecx, dword [esp + 0x1818]
add esp, 4
push eax
mov eax, dword [ebx + 0x58]
push eax
push ecx
push str.__invalid_cut_off_version:_expect_a_iVersion__d__NOT_less_than_min_ver__d__of_meta__s_s_versionindicator
push 0x400
call fcn.00440370
push eax
call fcn.00442785
add esp, 0x18
mov dword [esp + 0x18], 0x82010401
jmp 0x43ea60
push 0x400
call fcn.00440370
push eax
call fcn.00436b9d
mov esi, eax
add esp, 8
cmp esi, 0x400
jge 0x43e9bd
mov eax, 0x400
sub eax, esi
jmp 0x43e9bf
xor eax, eax
push 0x1da
push str.lib_src_tdr_tdr_net.c
push str.___s:_d
push eax
call fcn.00440370
add eax, esi
push eax
call fcn.00442785
add esp, 0x14
jmp 0x43ea60
push 0x400
call fcn.00440370
push eax
call fcn.00436b9d
add esp, 8
mov dword [esp + 0x20], eax
cmp eax, 0x400
jge 0x43ea11
mov eax, 0x400
sub eax, dword [esp + 0x20]
mov dword [esp + 0x40], eax
jmp 0x43ea19
mov dword [esp + 0x40], 0
mov edx, dword [esp + 0x28]
push edx
call fcn.0043d390
add esp, 4
push eax
push ebx
call fcn.0043d4c0
mov ecx, dword [esp + 0x48]
add esp, 4
push eax
mov eax, dword [ebx + 0x24]
push eax
push ebp
push str.__invalid_refer_value:_expect_refer_value__d__in__0__array_count__d___about_entry__s__of_meta__s_
push ecx
call fcn.00440370
add eax, dword [esp + 0x38]
push eax
call fcn.00442785
mov edx, dword [ebx + 0x2c]
mov dword [esp + 0x34], 0x82010403
mov dword [esi + 0x24], edx
add esp, 0x1c
mov eax, dword [esp + 0xa4]
mov esi, dword [esp + 0x58]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x18]
test eax, eax
jns 0x43eaca
mov ebx, dword [esp + 0x38]
mov ecx, 1
cmp ebx, ecx
jle 0x43eaca
lea edx, [esp + 0x160]
lea ebx, [ebx]
mov ebp, dword [edx - 0x20]
test byte [ebp + 0x44], 4
jne 0x43eab7
mov ebp, dword [edx]
add dword [esi + 4], ebp
inc ecx
add edx, 0xbc
cmp ecx, ebx
jl 0x43ea90
mov ecx, dword [esp + 0x44]
sub edi, dword [ecx]
mov dword [ecx + 4], edi
jmp 0x43eb7a
imul ecx, ecx, 0xbc
mov ecx, dword [esp + ecx + 0x84]
mov edx, dword [ecx + 0x18]
add dword [esi + 4], edx
mov ecx, dword [esp + 0x44]
sub edi, dword [ecx]
mov dword [ecx + 4], edi
jmp 0x43eb7a
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x44]
mov dword [eax + 4], ebx
mov dword [ecx + 4], ebx
push ebp
cmp dword [ebp + 8], esi
jle 0x43eb01
call fcn.0043d390
mov edx, dword [ebp + 8]
add esp, 4
push eax
push edx
push esi
push str.__invalid_parameter:_expect_a_iVersion__d__NOT_less_than_base_version__d__of_meta__s_
jmp 0x43eb14
call fcn.0043d390
add esp, 4
push eax
mov eax, dword [ebp + 0x58]
push eax
push esi
push str.__invalid_parameter:_expect_a_iVersion__d__NOT_less_than_min_ver__d__of_meta__s_s_versionindicator
push 0x400
call fcn.00440370
push eax
call fcn.00442785
mov eax, 0x82010401
jmp 0x43eb77
mov ecx, dword [esi + 4]
mov edx, dword [esi]
mov eax, dword [esp + 0x44]
push ecx
mov ecx, dword [eax + 4]
push edx
push ecx
push edi
push str.__invalid_parameters:_a_pstNet__pszBuff__p_NULL_or_a_pstNet__iBuff__u__0_or_a_pstHost__pszBuff__p_NULL_or_a_pstHost__iBuff__u__0
push 0x400
call fcn.00440370
push eax
call fcn.00442785
add esp, 0x1c
mov eax, 0x82010468
jmp 0x43eb7a
push esi
push edi
push ebp
push str.__invalid_parameters:_a_pstMeta__p_NULL_or_a_pstMeta__iTypeTDR_TYPE_UNION_or_a_pstNext__p_NULL_or_a_pstHost__p_NULL
push 0x400
call fcn.00440370
push eax
call fcn.00442785
mov eax, 0x82010468
add esp, 0x18
mov ecx, dword [esp + 0x1800]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0042cb12
add esp, 0x17f4
ret