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

Disassembly:
mov eax, 0x1808
call fcn.0043f390
mov eax, dword [esp + 0x1814]
mov edx, dword [esp + 0x1810]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x1818]
test esi, esi
push edi
mov dword [esp + 0x1c], 0
je 0x44638c
mov ecx, dword [esi + 0x10]
test ecx, ecx
je 0x44638c
test eax, eax
je 0x44638c
test edx, edx
je 0x44638c
mov ebp, dword [eax]
test ebp, ebp
je 0x446323
mov eax, dword [eax + 4]
test eax, eax
mov dword [esp + 0x28], eax
jbe 0x446323
mov ecx, dword [edx]
test ecx, ecx
je 0x446323
mov edi, dword [edx + 4]
test edi, edi
jbe 0x446323
mov ebx, dword [esp + 0x1828]
test ebx, ebx
je 0x4448ae
mov eax, dword [esi + 0xc]
cmp ebx, eax
jle 0x4448ba
mov eax, dword [esi + 0xc]
mov ebx, eax
mov dword [esp + 0x1828], ebx
cmp dword [esi + 8], ebx
jg 0x4462ad
cmp ebx, eax
jg 0x4462ad
mov edx, dword [esi + 0x74]
test edx, edx
jbe 0x444949
cmp dword [esi + 0x58], ebx
jle 0x444949
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
cmp ebp, 0x400
jge 0x4448fb
mov edi, 0x400
sub edi, ebp
jmp 0x4448fd
xor edi, edi
push esi
call fcn.0043fb70
add esp, 4
push eax
mov eax, dword [esi + 0x58]
push eax
push ebx
push str.invalid_parameter:_expect_a_iVersion__d__NOT_less_than_min_ver__d__of_meta__s_s_versionindicator
push edi
call fcn.004491d0
add eax, ebp
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
mov ecx, dword [esp + 0x1838]
mov edx, dword [esp + 0x183c]
add esp, 0x18
xor eax, eax
mov dword [ecx + 4], eax
mov dword [edx + 4], eax
pop edi
pop esi
pop ebp
mov eax, 0x82010401
pop ebx
add esp, 0x1808
ret
mov eax, dword [esp + 0x28]
add edi, ecx
mov dword [esp + 0x18], esi
mov dword [esp + 0x98], esi
lea ebx, [eax + ebp]
mov eax, esi
sub eax, dword [esi + 0x3c]
mov dword [esp + 0x38], ebx
mov dword [esp + 0xa4], 1
mov dword [esp + 0xa8], 0
sub eax, 0x114
mov dword [esp + 0xc8], ebp
mov dword [esp + 0x54], eax
lea eax, [esp + 0x98]
mov dword [esp + 0x3c], eax
mov eax, dword [esi + 0x64]
test eax, eax
mov dword [esp + 0xc0], ecx
mov dword [esp + 0xc4], edi
jbe 0x4449d4
mov ecx, dword [esi + 0x68]
mov dword [esp + 0xac], eax
cmp ecx, 0xffffffff
je 0x4449c6
mov dword [esp + 0xcc], ebp
add ebp, eax
jmp 0x4449eb
mov ecx, dword [esi + 0x5c]
add ecx, ebp
mov dword [esp + 0xcc], ecx
jmp 0x4449eb
xor eax, eax
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], eax
mov dword [esp + 0xcc], eax
test edx, edx
jbe 0x444bec
mov ecx, dword [esi + 0x6c]
add ecx, ebp
sub ebx, ecx
cmp ebx, edx
jl 0x444b48
mov eax, edx
sub eax, 2
je 0x444b26
sub eax, 2
je 0x444aff
sub eax, 4
je 0x444a24
xor eax, eax
mov al, byte [ecx]
jmp 0x444b34
mov edx, dword [ecx + 4]
mov eax, dword [ecx]
mov ebx, edx
mov ecx, 0x10
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], edx
xor edi, edi
and ebx, 0xff0000
call fcn.00449b90
or edi, eax
or ebx, edx
mov ecx, 0x10
mov eax, edi
mov edx, ebx
call fcn.00449b90
mov edi, dword [esp + 0x48]
xor ecx, ecx
mov ebx, edi
or eax, ecx
and ebx, 0xff00
mov ecx, 0x10
or edx, ebx
call fcn.00449b90
mov ebx, edi
xor ecx, ecx
and ebx, 0xff
or eax, ecx
or edx, ebx
mov ecx, 8
call fcn.00449b90
mov ebx, dword [esp + 0x44]
mov dword [esp + 0x70], eax
mov dword [esp + 0x28], edx
mov ecx, 0x10
mov eax, ebx
mov edx, edi
call fcn.00449b70
xor ecx, ecx
and ebx, 0xff00
or edx, ecx
or eax, ebx
mov ecx, 0x10
call fcn.00449b70
mov ecx, dword [esp + 0x44]
xor edi, edi
and ecx, 0xff0000
or edx, edi
or eax, ecx
mov ecx, 0x10
call fcn.00449b70
mov ecx, dword [esp + 0x44]
or edx, edi
and ecx, 0xff000000
or eax, ecx
mov ecx, 8
call fcn.00449b70
mov ecx, dword [esp + 0x70]
or ecx, eax
mov eax, dword [esp + 0x28]
or eax, edx
mov dword [esp + 0x5c], eax
jmp 0x444b3b
mov ecx, dword [ecx]
mov eax, ecx
mov edx, ecx
and eax, 0xff0000
shr edx, 0x10
or eax, edx
mov edx, ecx
shl edx, 0x10
and ecx, 0xff00
or edx, ecx
shr eax, 8
shl edx, 8
or eax, edx
jmp 0x444b34
xor eax, eax
mov ax, word [ecx]
xor ecx, ecx
mov ch, al
shr eax, 8
or eax, ecx
cdq
mov ecx, eax
mov dword [esp + 0x5c], edx
mov ebx, ecx
test ecx, ecx
mov dword [esp + 0xb8], ebx
jne 0x444b56
mov ebx, dword [esp + 0x1828]
mov dword [esp + 0xb8], ebx
cmp dword [esi + 8], ebx
jg 0x444b69
cmp ebx, dword [esi + 0xc]
jg 0x444b69
cmp ebx, dword [esi + 0x58]
jge 0x444bfa
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
cmp ebp, 0x400
jge 0x444b8d
mov edi, 0x400
sub edi, ebp
jmp 0x444b8f
xor edi, edi
mov edx, dword [esp + 0x1828]
push edx
push esi
call fcn.0043fb70
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
add esp, 4
push eax
mov eax, dword [esi + 0x58]
push eax
push ebx
push ecx
push edx
push ebx
push str.invalid_versionindicator_value:_expect_indicator__d__in__base_ver__d___cur_ver__d___and_indicator__d__NOT_less_than_min_ver__d__of_meta__s_s_versionindicator__a_iVersion__d_
push edi
call fcn.004491d0
add eax, ebp
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
mov ecx, dword [esp + 0x1848]
mov edx, dword [esp + 0x184c]
add esp, 0x28
xor eax, eax
mov dword [ecx + 4], eax
mov dword [edx + 4], eax
pop edi
pop esi
pop ebp
mov eax, 0x82010470
pop ebx
add esp, 0x1808
ret
mov eax, dword [esp + 0x1828]
mov dword [esp + 0xb8], eax
mov ebx, dword [esp + 0x3c]
mov ecx, 1
xor eax, eax
mov dword [esp + 0x4c], ecx
mov dword [esp + 0xbc], eax
mov dword [esp + 0xd0], ecx
mov dword [esp + 0x9c], eax
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x444df5
mov eax, dword [ebx + 0x14]
mov dword [esp + 0x2c], 0
test eax, eax
jbe 0x444d89
sub eax, 2
je 0x444d60
sub eax, 2
je 0x444d38
sub eax, 4
je 0x444c64
mov ecx, dword [ebx + 0x34]
xor eax, eax
mov al, byte [ecx]
jmp 0x444d71
mov edx, dword [ebx + 0x34]
mov ecx, 0x10
xor esi, esi
mov edi, dword [edx]
mov eax, edi
mov edx, dword [edx + 4]
mov ebp, edx
mov dword [esp + 0x94], edx
and ebp, 0xff0000
call fcn.00449b90
or esi, eax
or ebp, edx
mov ecx, 0x10
mov eax, esi
mov edx, ebp
call fcn.00449b90
mov esi, dword [esp + 0x94]
xor ecx, ecx
mov ebp, esi
or eax, ecx
and ebp, 0xff00
mov ecx, 0x10
or edx, ebp
call fcn.00449b90
mov ebp, esi
xor ecx, ecx
and ebp, 0xff
or eax, ecx
or edx, ebp
mov ecx, 8
call fcn.00449b90
mov dword [esp + 0x78], eax
mov ebp, edx
mov ecx, 0x10
mov eax, edi
mov edx, esi
call fcn.00449b70
mov ecx, edi
xor esi, esi
and ecx, 0xff00
or edx, esi
or eax, ecx
mov ecx, 0x10
call fcn.00449b70
mov ecx, edi
or edx, esi
and ecx, 0xff0000
or eax, ecx
mov ecx, 0x10
call fcn.00449b70
xor ecx, ecx
and edi, 0xff000000
or edx, ecx
or eax, edi
mov ecx, 8
call fcn.00449b70
mov esi, dword [esp + 0x78]
or esi, eax
or ebp, edx
mov dword [esp + 0x34], ebp
jmp 0x444d78
mov edx, dword [ebx + 0x34]
mov edx, dword [edx]
mov eax, edx
mov ecx, edx
and eax, 0xff0000
shr ecx, 0x10
or eax, ecx
mov ecx, edx
shl ecx, 0x10
and edx, 0xff00
or ecx, edx
shr eax, 8
shl ecx, 8
jmp 0x444d6f
mov edx, dword [ebx + 0x34]
xor eax, eax
xor ecx, ecx
mov ax, word [edx]
mov ch, al
shr eax, 8
or eax, ecx
cdq
mov esi, eax
mov dword [esp + 0x34], edx
mov ebp, dword [ebx + 0x30]
mov eax, dword [esp + 0x38]
add ebp, esi
cmp ebp, eax
ja 0x446054
mov eax, dword [ebx + 0xc]
test eax, eax
jle 0x444da9
mov eax, dword [ebx + 0x14]
test eax, eax
jbe 0x444da6
mov eax, dword [ebx + 0x18]
test eax, eax
jge 0x444dcc
mov eax, dword [ebx + 0x18]
mov dword [ebx + 0x34], ebp
sub ebp, eax
mov dword [ebx + 0x30], ebp
cmp dword [esp + 0x4c], 1
jle 0x444df5
mov eax, dword [ebx + 4]
test byte [eax + 0x44], 4
je 0x444dd9
mov eax, dword [eax + 0x18]
mov ecx, dword [ebx - 0x98]
add ecx, eax
mov dword [ebx - 0x98], ecx
jmp 0x444dee
mov edx, dword [ebx + 0x18]
mov dword [ebx + 0x30], ebp
add edx, ebp
mov dword [ebx + 0x34], edx
jmp 0x444da9
mov ecx, dword [esp + 0x18]
mov eax, dword [ebx - 0x98]
mov edx, dword [ecx + 0x1c]
add eax, edx
mov dword [ebx - 0x98], eax
mov dword [ebx + 0x24], 0
mov eax, dword [ebx + 0xc]
test eax, eax
jg 0x444e48
mov eax, dword [esp + 0x4c]
sub ebx, 0xbc
dec eax
mov dword [esp + 0x3c], ebx
test eax, eax
mov dword [esp + 0x4c], eax
jle 0x44621c
mov ecx, dword [ebx]
mov dword [esp + 0x18], ecx
mov eax, dword [ecx + 0x10]
test eax, eax
je 0x444f2a
mov esi, dword [ebx + 0x10]
mov edx, dword [ecx + 0x2c]
inc esi
mov eax, esi
mov dword [ebx + 0x10], esi
cmp eax, edx
jl 0x446043
mov dword [ebx + 0x10], 0
jmp 0x445d8a
mov edi, dword [ebx + 0x10]
mov edx, dword [esp + 0x18]
lea eax, [edi + edi*4]
lea ecx, [eax + eax*8]
lea esi, [edx + ecx*4 + 0xb8]
mov dword [esp + 0x14], esi
mov cx, word [esi + 0x44]
test cl, 2
je 0x444eb6
mov eax, dword [edx + 0x10]
test eax, eax
jne 0x444e8e
mov ecx, dword [ebx + 0xc]
mov edx, dword [edx + 0x1c]
dec ecx
mov dword [ebx + 0xc], ecx
mov eax, dword [ebx + 0x28]
add eax, edx
mov dword [ebx + 0x28], eax
mov eax, dword [ebx + 0x38]
mov dword [esp + 0x2c], eax
jmp 0x446043
mov ecx, dword [edx + 0x2c]
lea eax, [edi + 1]
cmp eax, ecx
mov dword [ebx + 0x10], eax
jl 0x446043
mov ecx, dword [ebx + 0xc]
mov dword [ebx + 0x10], 0
dec ecx
mov dword [ebx + 0xc], ecx
mov ecx, dword [esp + 0x18]
jmp 0x445d8d
mov eax, dword [esi + 0x58]
test eax, eax
jbe 0x444efd
mov edx, dword [esi + 0x5c]
add edx, dword [ebx + 0x28]
sub eax, 2
je 0x444ef1
sub eax, 2
je 0x444ee8
sub eax, 4
je 0x444edd
xor eax, eax
mov al, byte [edx]
cdq
mov dword [esp + 0x34], edx
jmp 0x444f00
mov eax, dword [edx]
mov edx, dword [edx + 4]
mov dword [esp + 0x34], edx
jmp 0x444f00
mov eax, dword [edx]
cdq
mov dword [esp + 0x34], edx
jmp 0x444f00
xor eax, eax
mov ax, word [edx]
cdq
mov dword [esp + 0x34], edx
jmp 0x444f00
mov eax, dword [esi + 0x24]
test eax, eax
mov dword [esp + 0x40], eax
jl 0x4461ac
mov edx, dword [esi + 0x24]
cmp edx, eax
jge 0x444f1b
test edx, edx
jg 0x4461ac
test eax, eax
jne 0x444f82
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx + 0x10]
test eax, eax
jne 0x444f48
mov edx, dword [ebx + 0xc]
mov eax, dword [ecx + 0x1c]
mov ecx, dword [ebx + 0x28]
dec edx
add ecx, eax
mov dword [ebx + 0xc], edx
mov dword [ebx + 0x28], ecx
mov ecx, dword [ebx + 0x38]
mov dword [esp + 0x2c], ecx
jmp 0x446043
mov edx, dword [ecx + 0x2c]
lea eax, [edi + 1]
cmp eax, edx
mov dword [ebx + 0x10], eax
jl 0x446043
mov edx, dword [ebx + 0xc]
mov dword [ebx + 0x10], 0
dec edx
mov dword [ebx + 0xc], edx
mov edx, dword [esp + 0x18]
mov ecx, dword [ebx + 0x28]
mov eax, dword [edx + 0x1c]
add ecx, eax
mov dword [ebx + 0x28], ecx
mov ecx, dword [ebx + 0x38]
mov dword [esp + 0x2c], ecx
jmp 0x446043
mov edi, dword [ebx + 0x28]
mov edx, dword [esi + 0x2c]
add edi, edx
test cl, 4
mov dword [esp + 0x10], edi
je 0x444fba
mov ecx, dword [esi + 8]
mov edi, dword [edi]
cmp ecx, 1
mov dword [esp + 0x10], edi
jle 0x444fa8
mov edx, dword [esi + 0x14]
add edx, edi
jmp 0x444fbd
mov edx, dword [esi + 0x78]
mov ecx, dword [esp + 0x54]
mov edx, dword [edx + ecx + 0x130]
add edx, edi
jmp 0x444fbd
mov edx, dword [ebx + 0x2c]
mov ecx, dword [ebx + 0x20]
mov dword [esp + 0x50], edx
cmp dword [esi + 4], ecx
jle 0x44511d
mov ecx, dword [esi + 0x98]
cmp ecx, 0xffffffff
jne 0x445011
mov ecx, dword [esi + 0x20]
test ecx, ecx
ja 0x444fe2
mov ecx, dword [esi + 0x18]
imul ecx, eax
sub edx, edi
cmp edx, ecx
jge 0x444ff8
mov dword [esp + 0x1c], 0x82010407
jmp 0x4450d7
mov edi, dword [esp + 0x10]
mov edx, ecx
xor eax, eax
shr ecx, 2
rep stosd dword es:[edi], eax
mov ecx, edx
and ecx, 3
rep stosb byte es:[edi], al
jmp 0x4450d7
mov eax, dword [esi + 8]
cmp eax, 0x15
je 0x445023
cmp eax, 0x16
je 0x445023
mov eax, dword [esi + 0x18]
jmp 0x44502e
mov eax, dword [esi + 0x20]
test eax, eax
ja 0x44502e
mov eax, edx
sub eax, edi
sub edx, edi
mov dword [esp + 0x24], eax
cmp edx, eax
jge 0x44503e
mov eax, edx
mov dword [esp + 0x24], eax
mov edx, dword [esi + 0x8c]
cmp eax, edx
jge 0x445055
mov dword [esp + 0x1c], 0x82010407
jmp 0x4450d7
mov eax, dword [esp + 0x54]
lea eax, [ecx + eax + 0x114]
mov ecx, dword [esp + 0x40]
test ecx, ecx
mov dword [esp + 0x28], eax
jle 0x4450d7
mov dword [esp + 0x20], ecx
cmp edx, 0x40
ja 0x44508e
xor ecx, ecx
test edx, edx
jbe 0x4450b6
mov dl, byte [eax]
mov byte [edi], dl
mov edx, dword [esi + 0x8c]
inc edi
inc eax
inc ecx
cmp ecx, edx
jb 0x44507b
jmp 0x4450b6
mov esi, eax
mov eax, dword [esp + 0x10]
mov ecx, edx
mov edi, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x14]
mov esi, ecx
add eax, dword [ecx + 0x8c]
mov dword [esp + 0x10], eax
mov edi, eax
mov edx, dword [esi + 0x8c]
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
sub ecx, edx
add edi, ecx
mov ecx, dword [esp + 0x20]
dec ecx
mov dword [esp + 0x10], edi
mov dword [esp + 0x20], ecx
jne 0x445070
test dword [esp + 0x1c], 0x80000000
jne 0x446216
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx + 0x10]
test eax, eax
je 0x445d8a
mov eax, dword [ebx + 0x10]
mov edx, dword [ecx + 0x2c]
inc eax
cmp eax, edx
mov dword [ebx + 0x10], eax
jl 0x446043
mov ecx, dword [ebx + 0xc]
mov dword [ebx + 0x10], 0
dec ecx
mov dword [ebx + 0xc], ecx
mov ecx, dword [esp + 0x18]
jmp 0x445d8d
mov ecx, dword [esi + 8]
cmp ecx, 1
jle 0x445bd2
sub ecx, 0x15
je 0x4457a9
dec ecx
je 0x4453d5
mov ecx, dword [esi + 0x18]
imul ecx, eax
add ecx, edi
cmp ecx, edx
jbe 0x4451a2
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, ecx
cmp edi, 0x400
jge 0x445169
mov eax, 0x400
sub eax, edi
jmp 0x44516b
xor eax, eax
mov edx, dword [esp + 0x40]
mov ecx, dword [esi + 0x18]
push edx
mov edx, dword [esp + 0x54]
push ecx
mov ecx, dword [esp + 0x18]
push edx
push ecx
push str.host_buffer_NOT_enough:_host_start__p__host_end__p__unit_size__u__count__d_
push eax
call fcn.004491d0
add eax, edi
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
add esp, 0x1c
mov dword [esp + 0x1c], 0x82010407
jmp 0x445b8a
mov ecx, dword [esi + 0x1c]
mov edx, ecx
imul edx, eax
add edx, ebp
cmp edx, dword [esp + 0x38]
jbe 0x44520b
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, ecx
cmp edi, 0x400
jge 0x4451d6
mov eax, 0x400
sub eax, edi
jmp 0x4451d8
xor eax, eax
mov ecx, dword [esp + 0x40]
mov edx, dword [esi + 0x1c]
push ecx
mov ecx, dword [esp + 0x3c]
push edx
push ecx
push ebp
push str.net_buffer_NOT_enough:_net_start__p__net_end__p__unit_size__u__count__d_
push eax
call fcn.004491d0
add eax, edi
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
add esp, 0x1c
mov dword [esp + 0x1c], 0x82010402
jmp 0x445b8a
dec ecx
je 0x445394
dec ecx
je 0x445370
sub ecx, 2
je 0x445325
test eax, eax
jle 0x445b8e
mov dword [esp + 0x20], eax
mov esi, dword [ebp + 4]
mov eax, dword [ebp]
mov ebx, esi
mov ecx, 0x10
mov edx, esi
mov dword [esp + 0x60], eax
xor edi, edi
and ebx, 0xff0000
call fcn.00449b90
or edi, eax
or ebx, edx
mov ecx, 0x10
mov eax, edi
mov edx, ebx
call fcn.00449b90
mov edi, esi
xor ecx, ecx
and edi, 0xff00
or eax, ecx
or edx, edi
mov ecx, 0x10
call fcn.00449b90
mov edi, esi
xor ecx, ecx
and edi, 0xff
or eax, ecx
or edx, edi
mov ecx, 8
call fcn.00449b90
mov edi, dword [esp + 0x60]
mov ebx, eax
mov dword [esp + 0x28], ebx
mov ebx, edx
mov ecx, 0x10
mov eax, edi
mov edx, esi
call fcn.00449b70
xor ecx, ecx
and edi, 0xff00
or edx, ecx
or eax, edi
mov ecx, 0x10
call fcn.00449b70
mov ecx, dword [esp + 0x60]
xor esi, esi
and ecx, 0xff0000
or edx, esi
or eax, ecx
mov ecx, 0x10
call fcn.00449b70
mov ecx, dword [esp + 0x60]
or edx, esi
and ecx, 0xff000000
or eax, ecx
mov ecx, 8
call fcn.00449b70
mov ecx, dword [esp + 0x28]
or ebx, edx
or ecx, eax
mov eax, dword [esp + 0x10]
add ebp, 8
mov dword [eax], ecx
mov dword [eax + 4], ebx
add eax, 8
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x20]
dec eax
mov dword [esp + 0x20], eax
jne 0x44522e
mov ebx, dword [esp + 0x3c]
jmp 0x445b86
test eax, eax
jle 0x445b8e
mov dword [esp + 0x20], eax
mov eax, dword [ebp]
add edi, 4
mov edx, eax
mov ecx, eax
and edx, 0xff0000
add ebp, 4
shr ecx, 0x10
or edx, ecx
mov ecx, eax
shl ecx, 0x10
and eax, 0xff00
or ecx, eax
mov eax, dword [esp + 0x20]
shr edx, 8
shl ecx, 8
or edx, ecx
dec eax
mov dword [edi - 4], edx
mov dword [esp + 0x20], eax
jne 0x445331
jmp 0x445b8e
test eax, eax
jle 0x445b8e
mov cx, word [ebp]
xor edx, edx
mov dl, ch
add edi, 2
mov dh, cl
add ebp, 2
mov word [edi - 2], dx
dec eax
jne 0x445378
jmp 0x445b8e
cmp eax, 0x40
jg 0x4453b0
test eax, eax
jbe 0x445b8e
mov cl, byte [ebp]
mov byte [edi], cl
inc edi
inc ebp
dec eax
jne 0x4453a1
jmp 0x445b8e
mov eax, dword [esp + 0x40]
mov edi, dword [esp + 0x10]
mov ecx, eax
mov esi, ebp
mov edx, ecx
add ebp, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
add dword [esp + 0x10], eax
jmp 0x445b86
test eax, eax
mov dword [esp + 0x28], 0
jle 0x445b8e
mov esi, dword [esp + 0x14]
mov eax, dword [esi + 0x20]
test eax, eax
jne 0x4453fa
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x10]
sub eax, ecx
mov edi, dword [esi + 0x50]
mov ebx, dword [esp + 0x38]
mov dword [esp + 0x24], eax
mov dword [esp + 0x30], edi
lea eax, [edi + ebp]
cmp eax, ebx
mov dword [esp + 0x20], eax
jae 0x4455fd
mov eax, edi
sub eax, 2
je 0x445530
sub eax, 2
je 0x445508
sub eax, 4
je 0x44543b
xor eax, eax
mov al, byte [ebp]
jmp 0x44553f
mov edx, dword [ebp + 4]
mov esi, dword [ebp]
mov ebx, edx
mov ecx, 0x10
mov eax, esi
xor edi, edi
and ebx, 0xff0000
call fcn.00449b90
or edi, eax
or ebx, edx
mov ecx, 0x10
mov eax, edi
mov edx, ebx
call fcn.00449b90
mov edi, dword [ebp + 4]
xor ecx, ecx
mov ebx, edi
or eax, ecx
and ebx, 0xff00
mov ecx, 0x10
or edx, ebx
call fcn.00449b90
mov ebx, edi
xor ecx, ecx
and ebx, 0xff
or eax, ecx
or edx, ebx
mov ecx, 8
call fcn.00449b90
mov ebx, eax
mov dword [esp + 0x84], edx
mov ecx, 0x10
mov eax, esi
mov edx, edi
call fcn.00449b70
mov ecx, esi
xor edi, edi
and ecx, 0xff00
or edx, edi
or eax, ecx
mov ecx, 0x10
call fcn.00449b70
mov ecx, esi
or edx, edi
and ecx, 0xff0000
or eax, ecx
mov ecx, 0x10
call fcn.00449b70
xor ecx, ecx
and esi, 0xff000000
or edx, ecx
or eax, esi
mov ecx, 8
call fcn.00449b70
mov edi, dword [esp + 0x30]
or ebx, eax
mov eax, dword [esp + 0x84]
or eax, edx
jmp 0x445544
mov ecx, dword [ebp]
mov eax, ecx
mov edx, ecx
and eax, 0xff0000
shr edx, 0x10
or eax, edx
mov edx, ecx
shl edx, 0x10
and ecx, 0xff00
or edx, ecx
shr eax, 8
shl edx, 8
or eax, edx
jmp 0x44553f
xor eax, eax
xor ecx, ecx
mov ax, word [ebp]
mov ch, al
shr eax, 8
or eax, ecx
cdq
mov ebx, eax
mov eax, edx
test eax, eax
jl 0x445638
jg 0x445557
cmp ebx, 2
jb 0x445638
mov esi, dword [esp + 0x38]
lea ecx, [edi + ebx]
mov edx, esi
sub edx, ebp
cmp edx, ecx
jl 0x445690
xor edx, edx
cmp eax, edx
jg 0x4456e9
mov edi, dword [esp + 0x24]
jl 0x445582
cmp ebx, edi
ja 0x4456e9
cmp word [ecx + ebp - 2], 0
jne 0x445747
mov ebp, dword [esp + 0x20]
cmp ebx, 0x40
ja 0x4455ad
test ebx, ebx
jbe 0x4455d3
mov eax, dword [esp + 0x10]
mov esi, ebx
mov cl, byte [ebp]
mov byte [eax], cl
inc eax
inc ebp
dec esi
jne 0x4455a1
jmp 0x4455d7
mov eax, dword [esp + 0x10]
mov ecx, ebx
mov edx, ecx
mov esi, ebp
mov edi, eax
add ebp, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
add eax, ebx
rep movsb byte es:[edi], byte [esi]
mov edi, dword [esp + 0x24]
mov dword [esp + 0x10], eax
jmp 0x4455d7
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x40]
sub edi, ebx
add eax, edi
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x28]
inc eax
cmp eax, ecx
mov dword [esp + 0x28], eax
jl 0x4453e5
mov ebx, dword [esp + 0x3c]
jmp 0x445b86
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, ecx
cmp edi, 0x400
jge 0x445621
mov eax, 0x400
sub eax, edi
jmp 0x445623
xor eax, eax
mov ecx, dword [esi + 0x50]
push ecx
push ebp
push ebx
push str.net_buffer_NOT_enough:_expect_end__p_____start__p___sizeinfo__u__
push eax
call fcn.004491d0
add eax, edi
jmp 0x445675
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, ecx
cmp esi, 0x400
jge 0x44565c
mov eax, 0x400
sub eax, esi
jmp 0x44565e
xor eax, eax
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x50]
push ecx
push ebp
push ebx
push str.net_buffer_wstring_length_error:_expect_length__d____min_wstring_len_2___start__p___sizeinfo__u__
push eax
call fcn.004491d0
add eax, esi
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
mov ebx, dword [esp + 0x54]
add esp, 0x18
mov dword [esp + 0x1c], 0x82010402
jmp 0x445b86
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, ecx
cmp edi, 0x400
jge 0x4456b4
mov eax, 0x400
sub eax, edi
jmp 0x4456b6
xor eax, eax
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x50]
push ecx
push ebx
push ebp
push esi
push str.net_buffer_NOT_enough:_expect__end__p____start__p______length__d___sizeinfo__u__
push eax
call fcn.004491d0
add eax, edi
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
mov ebx, dword [esp + 0x58]
add esp, 0x1c
mov dword [esp + 0x1c], 0x82010402
jmp 0x445b86
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, ecx
cmp edi, 0x400
jge 0x44570d
mov eax, 0x400
sub eax, edi
jmp 0x44570f
xor eax, eax
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x50]
mov edx, dword [esp + 0x24]
push ecx
push esi
push ebp
push edx
push ebx
push str.has_NO_sapce_for_wstrings_null:_length__d__buffer_size__d___start__p__end__p__custom_size__u__
push eax
call fcn.004491d0
add eax, edi
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
mov ebx, dword [esp + 0x5c]
add esp, 0x20
mov dword [esp + 0x1c], 0x82010406
jmp 0x445b86
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, ecx
cmp esi, 0x400
jge 0x44576b
mov ecx, 0x400
sub ecx, esi
jmp 0x44576d
xor ecx, ecx
mov eax, dword [esp + 0x14]
xor edx, edx
mov eax, dword [eax + 0x50]
push eax
add eax, ebx
push ebx
push ebp
mov dx, word [eax + ebp - 2]
push edx
push str.wstring_from_net_buffer_format_error:_expect_last_char_of_wstring__hu__is_null_wchar_0___net_start__p__length__d__sizeinfo__u_
push ecx
call fcn.004491d0
add eax, esi
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
mov ebx, dword [esp + 0x58]
add esp, 0x1c
mov dword [esp + 0x1c], 0x82010406
jmp 0x445b86
test eax, eax
mov dword [esp + 0x28], 0
jle 0x445b8e
mov esi, dword [esp + 0x14]
mov eax, dword [esi + 0x20]
test eax, eax
jne 0x4457ce
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x10]
sub eax, ecx
mov edx, dword [esp + 0x38]
mov dword [esp + 0x24], eax
mov eax, dword [esi + 0x50]
lea ecx, [eax + ebp]
cmp ecx, edx
mov dword [esp + 0x20], ecx
jae 0x4459db
sub eax, 2
je 0x445904
sub eax, 2
je 0x4458dc
sub eax, 4
je 0x445809
xor eax, eax
mov al, byte [ebp]
jmp 0x445913
mov edx, dword [ebp + 4]
mov eax, dword [ebp]
mov edi, edx
mov ecx, 0x10
mov dword [esp + 0x60], eax
xor esi, esi
and edi, 0xff0000
call fcn.00449b90
or esi, eax
or edi, edx
mov ecx, 0x10
mov eax, esi
mov edx, edi
call fcn.00449b90
mov esi, dword [ebp + 4]
xor ecx, ecx
mov edi, esi
or eax, ecx
and edi, 0xff00
mov ecx, 0x10
or edx, edi
call fcn.00449b90
mov edi, esi
xor ecx, ecx
and edi, 0xff
or eax, ecx
or edx, edi
mov ecx, 8
call fcn.00449b90
mov edi, dword [esp + 0x60]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], edx
mov ecx, 0x10
mov eax, edi
mov edx, esi
call fcn.00449b70
mov ecx, edi
xor esi, esi
and ecx, 0xff00
or edx, esi
or eax, ecx
mov ecx, 0x10
call fcn.00449b70
mov ecx, edi
or edx, esi
and ecx, 0xff0000
or eax, ecx
mov ecx, 0x10
call fcn.00449b70
xor ecx, ecx
and edi, 0xff000000
or edx, ecx
or eax, edi
mov ecx, 8
call fcn.00449b70
mov esi, dword [esp + 0x70]
mov ecx, dword [esp + 0x74]
or esi, eax
or ecx, edx
mov dword [esp + 0x68], esi
jmp 0x44591c
mov ecx, dword [ebp]
mov eax, ecx
mov edx, ecx
and eax, 0xff0000
shr edx, 0x10
or eax, edx
mov edx, ecx
shl edx, 0x10
and ecx, 0xff00
or edx, ecx
shr eax, 8
shl edx, 8
or eax, edx
jmp 0x445913
xor eax, eax
xor ecx, ecx
mov ax, word [ebp]
mov ch, al
shr eax, 8
or eax, ecx
cdq
mov esi, eax
mov ecx, edx
mov dword [esp + 0x68], esi
test ecx, ecx
jl 0x445a2f
jg 0x44592f
cmp esi, 1
jb 0x445a2f
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x50]
lea edi, [eax + esi]
mov eax, dword [esp + 0x38]
sub eax, ebp
cmp eax, edi
jl 0x445a83
mov eax, dword [esp + 0x24]
cdq
cmp ecx, edx
jg 0x445adc
jl 0x44595e
cmp esi, eax
ja 0x445adc
mov al, byte [edi + ebp - 1]
test al, al
jne 0x445b2f
mov ebp, dword [esp + 0x20]
cmp esi, 0x40
ja 0x445989
test esi, esi
jbe 0x4459b1
mov eax, dword [esp + 0x10]
mov edi, esi
mov cl, byte [ebp]
mov byte [eax], cl
inc eax
inc ebp
dec edi
jne 0x44597d
jmp 0x4459b5
mov eax, dword [esp + 0x68]
mov edi, dword [esp + 0x10]
mov ecx, eax
mov esi, ebp
mov edx, ecx
add ebp, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x10]
mov esi, eax
add ecx, eax
mov dword [esp + 0x10], ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x24]
sub ecx, esi
add eax, ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x28]
inc eax
cmp eax, ecx
mov dword [esp + 0x28], eax
jl 0x4457b9
jmp 0x445b86
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, ecx
cmp edi, 0x400
jge 0x4459ff
mov eax, 0x400
sub eax, edi
jmp 0x445a01
xor eax, eax
mov ecx, dword [esi + 0x50]
mov edx, dword [esp + 0x38]
push ecx
push ebp
push edx
push str.net_buffer_NOT_enough:_expect_end__p_____start__p___sizeinfo__u__
push eax
call fcn.004491d0
add eax, edi
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
add esp, 0x18
mov dword [esp + 0x1c], 0x82010402
jmp 0x445b8a
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, ecx
cmp edi, 0x400
jge 0x445a53
mov eax, 0x400
sub eax, edi
jmp 0x445a55
xor eax, eax
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x50]
push edx
push ebp
push esi
push str.net_buffer_string_length_error:_expect_length__d____min_string_len_1___start__p___sizeinfo__u__
push eax
call fcn.004491d0
add eax, edi
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
add esp, 0x18
mov dword [esp + 0x1c], 0x82010402
jmp 0x445b86
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, ecx
cmp edi, 0x400
jge 0x445aa7
mov eax, 0x400
sub eax, edi
jmp 0x445aa9
xor eax, eax
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0x50]
mov ecx, dword [esp + 0x38]
push edx
push esi
push ebp
push ecx
push str.net_buffer_NOT_enough:_expect__end__p____start__p______length__d___sizeinfo__u__
push eax
call fcn.004491d0
add eax, edi
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
add esp, 0x1c
mov dword [esp + 0x1c], 0x82010402
jmp 0x445b86
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, ecx
cmp edi, 0x400
jge 0x445b00
mov eax, 0x400
sub eax, edi
jmp 0x445b02
xor eax, eax
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x50]
mov edx, dword [esp + 0x38]
push ecx
mov ecx, dword [esp + 0x28]
push edx
push ebp
push ecx
push esi
push str.has_NO_sapce_for_strings_null:_length__d__buffer_size__d___start__p__end__p__custom_size__u__
push eax
call fcn.004491d0
add eax, edi
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
add esp, 0x20
jmp 0x445b7e
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, ecx
cmp edi, 0x400
jge 0x445b53
mov ecx, 0x400
sub ecx, edi
jmp 0x445b55
xor ecx, ecx
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 0x50]
push eax
add eax, esi
push esi
push ebp
movsx eax, byte [eax + ebp - 1]
push eax
push str.string_from_net_buffer_format_error:_expect_last_char_of_string__d__is_null_char_0___net_start__p__length__d__sizeinfo__u_
push ecx
call fcn.004491d0
add eax, edi
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
add esp, 0x1c
mov dword [esp + 0x1c], 0x82010406
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
test dword [esp + 0x1c], 0x80000000
jne 0x4460c6
test byte [esi + 0x44], 4
je 0x445baf
mov ecx, dword [esi + 0x18]
mov eax, dword [esi + 0x2c]
add ecx, eax
mov dword [ebx + 0x24], ecx
jmp 0x445bb5
sub edi, dword [ebx + 0x28]
mov dword [ebx + 0x24], edi
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx + 0x10]
test eax, eax
je 0x445d8a
mov esi, dword [ebx + 0x10]
inc esi
mov dword [ebx + 0x10], esi
mov eax, esi
jmp 0x445dab
cmp dword [esp + 0x4c], 0x20
jge 0x44612a
test ecx, ecx
jne 0x445dd9
mov eax, dword [esi + 0x68]
mov ecx, dword [ebx + 0x28]
add eax, ecx
mov ecx, dword [esi + 0x64]
sub ecx, 2
je 0x445c18
sub ecx, 2
je 0x445c14
sub ecx, 4
je 0x445c05
xor ecx, ecx
mov cl, byte [eax]
jmp 0x445c1d
mov edx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x44], edx
mov dword [esp + 0x48], eax
jmp 0x445c28
mov eax, dword [eax]
jmp 0x445c1f
xor ecx, ecx
mov cx, word [eax]
mov eax, ecx
cdq
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], edx
mov edx, dword [esi + 0x78]
mov eax, dword [esp + 0x54]
lea eax, [edx + eax + 0x114]
mov dword [esp + 0x18], eax
mov edx, dword [eax + 0x138]
lea ecx, [eax + 0x134]
xor eax, eax
mov dword [esp + 0x28], ecx
cmp edx, dword [ecx]
mov ecx, dword [esp + 0x44]
setg al
dec eax
mov dword [esp + 0x14], eax
mov eax, ecx
sub eax, edx
mov edx, dword [esp + 0x18]
js 0x445ca1
cmp eax, dword [edx + 0x2c]
jge 0x445ca1
lea ecx, [eax + eax*4]
lea ecx, [ecx + ecx*8]
lea edx, [edx + ecx*4]
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x30], edx
mov edx, dword [edx + 0x138]
cmp edx, ecx
jne 0x445c9d
mov ecx, dword [esp + 0x30]
cmp edx, dword [ecx + 0x134]
jg 0x445c99
mov dword [esp + 0x14], eax
jmp 0x445d5a
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x18]
mov eax, dword [edx + 0x2c]
cmp eax, 0x10
jge 0x445cf5
test eax, eax
mov dword [esp + 0x20], 0
jle 0x445d5e
mov eax, dword [esp + 0x28]
jmp 0x445cc7
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x44]
cmp dword [eax + 4], ecx
jg 0x445cd0
cmp ecx, dword [eax]
jle 0x445ceb
mov ecx, dword [esp + 0x20]
add eax, 0xb4
mov dword [esp + 0x30], eax
mov eax, dword [edx + 0x2c]
inc ecx
cmp ecx, eax
mov dword [esp + 0x20], ecx
jl 0x445cbf
jmp 0x445d5e
mov eax, dword [esp + 0x20]
mov dword [esp + 0x14], eax
jmp 0x445d5e
mov ecx, dword [edx + 0x2c]
xor eax, eax
dec ecx
mov dword [esp + 0x20], eax
test ecx, ecx
mov dword [esp + 0x24], ecx
jl 0x445d5e
add ecx, eax
sar ecx, 1
lea eax, [ecx + ecx*4]
lea edx, [eax + eax*8]
mov eax, dword [esp + 0x18]
lea eax, [eax + edx*4]
mov edx, dword [eax + 0x138]
mov eax, dword [eax + 0x134]
cmp edx, eax
mov dword [esp + 0x30], eax
jg 0x445d45
mov eax, dword [esp + 0x44]
cmp eax, edx
jge 0x445d3f
mov eax, dword [esp + 0x20]
dec ecx
mov dword [esp + 0x24], ecx
jmp 0x445d50
cmp eax, dword [esp + 0x30]
jle 0x445d56
lea eax, [ecx + 1]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x20], eax
cmp eax, ecx
jle 0x445d07
jmp 0x445d5a
mov dword [esp + 0x14], ecx
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
cmp eax, 0xffffffff
je 0x445d7d
lea eax, [eax + eax*4]
lea ecx, [eax + eax*8]
mov eax, dword [ebx + 0x20]
cmp dword [edx + ecx*4 + 0xbc], eax
jg 0x445d7d
test edx, edx
jne 0x445df5
mov ecx, dword [ebx]
mov dword [esp + 0x18], ecx
mov eax, dword [ecx + 0x10]
test eax, eax
jne 0x445da4
dec dword [ebx + 0xc]
mov edx, dword [ecx + 0x1c]
mov eax, dword [ebx + 0x28]
add eax, edx
mov dword [ebx + 0x28], eax
mov eax, dword [ebx + 0x38]
mov dword [esp + 0x2c], eax
jmp 0x446043
mov eax, dword [ebx + 0x10]
inc eax
mov dword [ebx + 0x10], eax
cmp eax, dword [ecx + 0x2c]
jl 0x446043
mov edx, dword [ebx + 0xc]
mov ecx, dword [ecx + 0x1c]
mov eax, dword [ebx + 0x28]
dec edx
mov dword [ebx + 0xc], edx
mov edx, dword [ebx + 0x38]
add eax, ecx
mov dword [ebx + 0x10], 0
mov dword [ebx + 0x28], eax
mov dword [esp + 0x2c], edx
jmp 0x446043
mov ecx, dword [esi + 0x78]
mov edx, dword [esp + 0x54]
mov dword [esp + 0x14], 0
lea edx, [ecx + edx + 0x114]
mov dword [esp + 0x18], edx
jmp 0x445df9
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x4c]
add ebx, 0xbc
inc ecx
mov dword [esp + 0x3c], ebx
mov dword [ebx + 0xc], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x4c], ecx
mov dword [ebx + 0x10], eax
mov eax, dword [edx + 0x64]
xor ecx, ecx
cmp eax, ecx
mov dword [ebx + 0x24], ecx
mov dword [ebx], edx
mov dword [ebx + 0x28], edi
mov dword [ebx + 0x30], ebp
jbe 0x445e51
mov edi, dword [edx + 0x68]
mov dword [ebx + 0x14], eax
cmp edi, 0xffffffff
je 0x445e43
mov edi, eax
mov dword [ebx + 0x34], ebp
neg edi
mov dword [ebx + 0x18], edi
add ebp, eax
jmp 0x445e95
mov eax, dword [edx + 0x5c]
mov dword [ebx + 0x18], eax
lea edi, [eax + ebp]
mov dword [ebx + 0x34], edi
jmp 0x445e95
mov eax, dword [esi + 0x50]
cmp eax, ecx
jbe 0x445e92
mov edi, dword [esi + 0x54]
mov dword [ebx + 0x14], eax
cmp edi, 0xffffffff
je 0x445e6f
mov dword [ebx + 0x34], ebp
add ebp, eax
neg eax
mov dword [ebx + 0x18], eax
jmp 0x445e95
mov eax, dword [esi + 0x48]
mov edi, dword [esi + 0x28]
cmp eax, edi
jl 0x445e85
sub eax, edi
mov dword [ebx + 0x18], eax
add eax, ebp
mov dword [ebx + 0x34], eax
jmp 0x445e95
mov edi, dword [ebx - 0x8c]
add edi, eax
mov dword [ebx + 0x34], edi
jmp 0x445e95
mov dword [ebx + 0x14], ecx
mov eax, dword [esp + 0x50]
mov dword [ebx + 0x30], ebp
mov dword [ebx + 0x2c], eax
mov eax, dword [edx + 0x74]
cmp eax, ecx
mov dword [ebx + 4], esi
mov dword [ebx + 0x38], 1
jbe 0x446021
mov ecx, dword [edx + 0x6c]
mov edx, dword [esp + 0x38]
add ecx, ebp
sub edx, ecx
cmp edx, eax
jl 0x446016
sub eax, 2
je 0x445fef
sub eax, 2
je 0x445fc8
sub eax, 4
je 0x445ee7
xor eax, eax
mov al, byte [ecx]
jmp 0x445ffd
mov edx, dword [ecx + 4]
mov eax, dword [ecx]
mov edi, edx
mov ecx, 0x10
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], edx
xor esi, esi
and edi, 0xff0000
call fcn.00449b90
or esi, eax
or edi, edx
mov ecx, 0x10
mov eax, esi
mov edx, edi
call fcn.00449b90
mov esi, dword [esp + 0x5c]
xor ecx, ecx
mov edi, esi
or eax, ecx
and edi, 0xff00
mov ecx, 0x10
or edx, edi
call fcn.00449b90
mov edi, esi
xor ecx, ecx
and edi, 0xff
or eax, ecx
or edx, edi
mov ecx, 8
call fcn.00449b90
mov edi, dword [esp + 0x58]
mov dword [esp + 0x88], eax
mov dword [esp + 0x30], edx
mov ecx, 0x10
mov eax, edi
mov edx, esi
call fcn.00449b70
xor ecx, ecx
and edi, 0xff00
or edx, ecx
or eax, edi
mov ecx, 0x10
call fcn.00449b70
mov ecx, dword [esp + 0x58]
xor esi, esi
and ecx, 0xff0000
or edx, esi
or eax, ecx
mov ecx, 0x10
call fcn.00449b70
mov ecx, dword [esp + 0x58]
or edx, esi
and ecx, 0xff000000
or eax, ecx
mov ecx, 8
call fcn.00449b70
mov ecx, dword [esp + 0x88]
or ecx, eax
mov eax, dword [esp + 0x30]
or eax, edx
mov dword [esp + 0x34], eax
jmp 0x446004
mov ecx, dword [ecx]
mov eax, ecx
mov edx, ecx
and eax, 0xff0000
shr edx, 0x10
or eax, edx
mov edx, ecx
shl edx, 0x10
and ecx, 0xff00
or edx, ecx
shr eax, 8
shl edx, 8
or eax, edx
jmp 0x445ffd
xor eax, eax
mov ax, word [ecx]
xor ecx, ecx
mov ch, al
shr eax, 8
or eax, ecx
cdq
mov ecx, eax
mov dword [esp + 0x34], edx
test ecx, ecx
mov dword [ebx + 0x20], ecx
jne 0x44602a
mov edx, dword [ebx - 0x9c]
mov dword [ebx + 0x20], edx
jmp 0x44602a
mov eax, dword [ebx - 0x9c]
mov dword [ebx + 0x20], eax
jmp 0x44602a
mov ecx, dword [ebx - 0x9c]
mov dword [ebx + 0x20], ecx
mov ecx, dword [esp + 0x18]
mov eax, dword [ebx + 0x20]
cmp dword [ecx + 8], eax
jg 0x44613d
cmp eax, dword [ecx + 0x58]
jl 0x44613d
mov eax, dword [esp + 0x4c]
test eax, eax
jg 0x444c22
jmp 0x44621c
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 0x400
mov dword [esp + 0x30], ecx
jge 0x44607a
mov edi, 0x400
sub edi, ecx
jmp 0x44607c
xor edi, edi
mov edx, dword [ebx + 0xc]
mov eax, dword [ebx]
push edx
push eax
call fcn.0043fb70
mov ecx, dword [ebx + 4]
add esp, 4
push eax
push ecx
call fcn.00442ad0
mov edx, dword [esp + 0x44]
add esp, 4
push eax
push esi
push edx
push ebp
push str.net_buffer_NOT_enough:_pszNetStart__p__pszNetEnd__p__sizeinfo__d__entry__s__meta__s__unpacked_entry_count__d_
push edi
call fcn.004491d0
add eax, dword [esp + 0x50]
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
add esp, 0x24
mov dword [esp + 0x1c], 0x82010402
jmp 0x44621c
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebx, ecx
cmp ebx, 0x400
jge 0x4460ea
mov edi, 0x400
sub edi, ebx
jmp 0x4460ec
xor edi, edi
mov ecx, dword [esp + 0x18]
push 0x303
push str.lib_src_tdr_tdr_net.c
push ecx
call fcn.0043fb70
add esp, 4
push eax
push esi
call fcn.00442ad0
add esp, 4
push eax
push str.__entry__s__of_meta__s___s:_d
push edi
call fcn.004491d0
add eax, ebx
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
add esp, 0x1c
jmp 0x44621c
mov edx, dword [esi + 0x2c]
mov dword [esp + 0x1c], 0x82010404
mov dword [ebx + 0x24], edx
jmp 0x44621c
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, ecx
cmp edi, 0x400
jge 0x446161
mov esi, 0x400
sub esi, edi
jmp 0x446163
xor esi, esi
mov eax, dword [esp + 0x181c]
push eax
call fcn.0043fb70
mov ecx, dword [esp + 0x1820]
add esp, 4
mov edx, dword [ecx + 0x58]
push eax
mov eax, dword [esp + 0x1c]
push edx
mov edx, dword [ebx + 0x20]
mov ecx, dword [eax + 8]
push ecx
push edx
push str.invalid_cut_off_version:_expect_cut_off_version__d__NOT_less_than_max_base_ver__d___min_ver__d___about_meta__s_
push esi
call fcn.004491d0
add eax, edi
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
add esp, 0x1c
mov dword [esp + 0x1c], 0x82010401
jmp 0x44621c
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
cmp ecx, 0x400
mov dword [esp + 0x30], ecx
jge 0x4461d2
mov edi, 0x400
sub edi, ecx
jmp 0x4461d4
xor edi, edi
mov eax, dword [esp + 0x18]
push eax
call fcn.0043fb70
add esp, 4
push eax
push esi
call fcn.00442ad0
mov ecx, dword [esi + 0x24]
mov edx, dword [esp + 0x48]
add esp, 4
push eax
push ecx
push edx
push str.invalid_refer_value:_expect_refer_value__d__in__0__array_count__d___about_entry__s__of_meta__s_
push edi
call fcn.004491d0
add eax, dword [esp + 0x48]
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
add esp, 0x1c
mov dword [esp + 0x1c], 0x82010403
mov eax, dword [esi + 0x2c]
mov dword [ebx + 0x24], eax
mov esi, dword [esp + 0x1820]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0xbc]
test eax, 0x80000000
mov dword [esi + 4], ecx
je 0x446296
mov edi, dword [esp + 0x4c]
mov ecx, 1
cmp edi, ecx
jle 0x446296
lea edx, [esp + 0x178]
mov ebx, dword [edx - 0x20]
test byte [ebx + 0x44], 4
jne 0x44627c
mov ebx, dword [edx]
add edx, 0xbc
add dword [esi + 4], ebx
inc ecx
cmp ecx, edi
jl 0x44624c
mov ecx, dword [esp + 0x1824]
pop edi
pop esi
sub ebp, dword [ecx]
mov dword [ecx + 4], ebp
pop ebp
pop ebx
add esp, 0x1808
ret
lea edx, [ecx + ecx*2]
shl edx, 4
sub edx, ecx
mov ecx, dword [esp + edx*4 + 0x9c]
mov edx, dword [ecx + 0x18]
mov ecx, dword [esi + 4]
add ecx, edx
mov dword [esi + 4], ecx
mov ecx, dword [esp + 0x1824]
pop edi
pop esi
sub ebp, dword [ecx]
mov dword [ecx + 4], ebp
pop ebp
pop ebx
add esp, 0x1808
ret
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov ebp, ecx
cmp ebp, 0x400
jge 0x4462d1
mov edi, 0x400
sub edi, ebp
jmp 0x4462d3
xor edi, edi
push esi
call fcn.0043fb70
mov ecx, dword [esi + 8]
add esp, 4
push eax
mov eax, dword [esi + 0xc]
push eax
push ecx
push ebx
push str.invalid_parameter:_expect_a_iVersion__d__in__base_ver__d___cur_ver__d___of_meta__s_
push edi
call fcn.004491d0
add eax, ebp
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
mov edx, dword [esp + 0x183c]
mov ecx, dword [esp + 0x1840]
add esp, 0x1c
xor eax, eax
mov dword [edx + 4], eax
mov dword [ecx + 4], eax
pop edi
pop esi
pop ebp
mov eax, 0x82010401
pop ebx
add esp, 0x1808
ret
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov esi, ecx
cmp esi, 0x400
jge 0x446347
mov eax, 0x400
sub eax, esi
jmp 0x446349
xor eax, eax
mov ecx, dword [esp + 0x1820]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx]
push edx
push ecx
mov ecx, dword [esp + 0x182c]
mov edx, dword [ecx + 4]
mov ecx, dword [ecx]
push edx
push ecx
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 eax
call fcn.004491d0
add eax, esi
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
add esp, 0x1c
mov eax, 0x82010468
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1808
ret
call fcn.004491d0
mov edi, eax
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, ecx
cmp edi, 0x400
jge 0x4463b0
mov eax, 0x400
sub eax, edi
jmp 0x4463b2
xor eax, eax
mov edx, dword [esp + 0x1820]
mov ecx, dword [esp + 0x1824]
push edx
push ecx
push esi
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 eax
call fcn.004491d0
add eax, edi
push eax
call dword [sym.imp.MSVCRT.dll__snprintf]
add esp, 0x18
mov eax, 0x82010468
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1808
ret