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

Disassembly:
sub esp, 0x29c
push ebx
mov ebx, dword [esp + 0x2ac]
push ebp
push esi
mov ebp, ecx
mov ecx, ebx
push edi
mov dword [esp + 0x14], ebp
call fcn.00469a80
mov esi, eax
mov ecx, esi
mov dword [esp + 0x10], esi
mov edx, dword [esi]
call dword [edx + 0x20]
mov ecx, dword [esp + 0x2bc]
xor edi, edi
mov dword [esp + 0x4c], eax
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], connect
mov dword [esp + 0x1c], edi
call fcn.0045df70
test eax, eax
jle 0x49c8fd
mov ecx, dword [esp + 0x2bc]
push edi
call fcn.0045de80
mov edi, eax
mov eax, dword [esp + 0x10]
mov ecx, eax
mov dword [esp + 0x18], edi
mov edx, dword [eax]
movzx esi, word [edi + 0x12]
call dword [edx + 0x20]
mov ecx, dword [esp + 0x4c]
add ecx, esi
sub ecx, eax
push ecx
push ebx
call fcn.0049db10
mov eax, 0x400
add esp, 8
test word [edi + 0x10], ax
je 0x49c287
mov eax, dword [ebp + 0x10]
test al, 2
je 0x49c265
push edi
push ebx
mov ecx, ebp
call fcn.0049c010
jmp 0x49c8dc
test al, 1
je 0x49c287
mov esi, dword [esp + 0x10]
push esi
push dword [esp + 0x20]
push edi
push dword [esp + 0x2c8]
call fcn.0049d680
add esp, 0x10
jmp 0x49c8e0
push dword [edi]
mov ecx, dword [esp + 0x2b8]
call fcn.0045ded0
mov esi, eax
mov dword [esp + 0x28], esi
test esi, esi
je 0x49c269
mov edx, dword [ebp]
mov ecx, ebp
push edi
push esi
call dword [edx + 0x10]
test eax, eax
je 0x49c269
mov cl, byte [edi + 0xc]
movzx ebp, word [esi + 0x12]
add ebp, dword [esp + 0x2b0]
movzx eax, cl
dec eax
cmp eax, 0x21
ja case.0x49c2cf.23
movzx eax, byte [eax + 0x49caac]
jmp dword [eax*4 + 0x49ca80]
push esi
call fcn.0049d8a0
push edi
mov esi, eax
call fcn.0049d8a0
mov ecx, dword [esp + 0x20]
add esp, 8
mov edi, eax
call fcn.00468990
push ebp
push edi
push esi
mov ecx, eax
call fcn.0049d570
add esp, 8
push eax
mov eax, ecx
cdq
idiv edi
push eax
mov eax, dword [esp + 0x24]
movzx eax, byte [eax + 0xc]
push eax
push ebx
call fcn.0049d940
add esp, 0x14
jmp case.0x49c2cf.19
push esi
call fcn.0049d8a0
push edi
mov esi, eax
call fcn.0049d8a0
push eax
push esi
call fcn.0049d570
push ebp
mov ebp, dword [esp + 0x28]
push eax
movzx eax, byte [ebp + 0xc]
push eax
push ebx
call fcn.0049da50
add esp, 0x20
jmp 0x49c8dc
cmp dword [esi + 8], 0
je case.0x49c2cf.19
cmp dword [edi + 8], 0
je case.0x49c2cf.19
push esi
call fcn.0049d8a0
push edi
mov esi, eax
call fcn.0049d8a0
push eax
push esi
call fcn.0049d570
mov ecx, dword [esp + 0x38]
add esp, 0x10
mov dword [esp + 0x24], eax
call fcn.00468e30
mov ecx, edi
mov dword [esp + 0x20], eax
call fcn.00468e30
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x18], eax
call fcn.00468990
cdq
idiv esi
mov edi, dword [esp + 0x24]
mov esi, eax
test edi, edi
jle case.0x49c2cf.19
nop dword [eax]
mov ecx, dword [esp + 0x28]
push ebp
call fcn.00468e60
lea ecx, [esp + 0x5c]
mov dword [esp + 0x38], 0
push ecx
mov ecx, dword [esp + 0x24]
push eax
call fcn.004692e0
test eax, eax
jne 0x49c3e7
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x38]
push eax
push dword [esp + 0x60]
call fcn.00469320
mov eax, esi
sub eax, 1
je 0x49c412
sub eax, 1
je 0x49c405
sub eax, 2
jne 0x49c41d
push dword [esp + 0x38]
mov ecx, ebx
call fcn.00469680
jmp 0x49c41d
push dword [esp + 0x38]
mov ecx, ebx
call fcn.00469640
jmp 0x49c41d
push dword [esp + 0x38]
mov ecx, ebx
call fcn.00469600
add ebp, esi
sub edi, 1
jne 0x49c3b0
jmp case.0x49c2cf.19
push edi
call fcn.0049d8a0
mov ebp, dword [esp + 0x18]
mov esi, eax
add esp, 4
xorps xmm0, xmm0
movlpd qword [esp + 0x74], xmm0
test esi, esi
jle 0x49c8dc
nop dword [eax]
movzx eax, byte [ebp + 0xc]
mov ecx, ebx
push eax
lea eax, [esp + 0x78]
push eax
call fcn.00469a30
sub esi, 1
jne 0x49c450
jmp 0x49c8dc
cmp cl, 0x1b
jne 0x49c535
mov eax, dword [esp + 0x14]
xorps xmm0, xmm0
push 1
mov ecx, ebx
movlpd qword [esp + 0x54], xmm0
movzx eax, byte [eax + 0xc]
push eax
lea eax, [esp + 0x58]
push eax
call fcn.00469880
cmp dword [ebp], 0
je 0x49c4a2
mov esi, dword [ebp + 8]
jmp 0x49c542
push 0x200
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x8c]
call fcn.004745a0
mov ecx, dword [esp + 0x2b4]
push 0x719cf0
push dword [esi]
push 0x71cb0c
call fcn.0045dc70
push eax
push str.Cant_copy_homogeneous_array._No_hkClass_for
lea ecx, [esp + 0x98]
call fcn.0045cb80
mov ecx, eax
call fcn.0045cb80
mov ecx, eax
call fcn.0045cb80
mov ecx, eax
call fcn.0045cb80
mov ecx, eax
call fcn.0045cb80
mov ecx, dword [0x884c54]
lea edx, [esp + 0xac]
push 0x1cc
push str.CopierhkObjectCopier.cpp
push edx
mov eax, dword [ecx]
push 0xabba5a55
push 1
call dword [eax + 0xc]
lea ecx, [esp + 0x84]
call fcn.0045caa0
xor esi, esi
jmp 0x49c542
cmp byte [edi + 0xd], 0
jne 0x49c53f
xor esi, esi
jmp 0x49c542
mov esi, dword [ebp + 4]
mov ebp, dword [esp + 0x14]
xorps xmm0, xmm0
push 1
mov ecx, ebx
movlpd qword [esp + 0x80], xmm0
movzx eax, byte [ebp + 0xc]
push eax
lea eax, [esp + 0x84]
push eax
call fcn.00469880
push esi
mov ecx, ebx
call fcn.00469680
cmp byte [edi + 0xc], 0x16
jne 0x49c8dc
or esi, 0x80000000
mov ecx, ebx
push esi
call fcn.00469680
jmp 0x49c8dc
movzx eax, word [ebp]
mov ecx, ebx
push eax
call fcn.00469660
movzx eax, word [ebp + 2]
mov ecx, ebx
push eax
call fcn.00469660
movzx eax, word [ebp + 2]
mov ecx, dword [esp + 0x30]
add eax, ebp
mov dword [esp + 0x6c], eax
mov ax, word [ebp]
mov word [esp + 0x70], ax
mov eax, dword [esp + 0x34]
and eax, 0x3fffffff
mov dword [esp + 0x64], esi
mov dword [esp + 0x68], edi
cmp ecx, eax
jne 0x49c5e9
push 0x10
lea eax, [esp + 0x30]
push eax
push 0x7d8950
call fcn.00467c00
mov ecx, dword [esp + 0x3c]
add esp, 0xc
mov eax, ecx
shl eax, 4
add eax, dword [esp + 0x2c]
je 0x49c600
movups xmm0, xmmword [esp + 0x64]
movups xmmword [eax], xmm0
mov ecx, dword [esp + 0x30]
inc ecx
mov dword [esp + 0x30], ecx
jmp case.0x49c2cf.19
mov ecx, esi
call fcn.00468e20
mov esi, eax
mov ecx, edi
mov dword [esp + 0x24], esi
call fcn.00468e20
mov dword [esp + 0x20], eax
test esi, esi
je case.0x49c2cf.19
test eax, eax
je case.0x49c2cf.19
push edi
call fcn.0049d8a0
add esp, 4
push eax
push dword [esp + 0x2c]
call fcn.0049d8a0
add esp, 4
push eax
call fcn.0049d570
add esp, 8
mov dword [esp + 0x18], eax
xor esi, esi
test eax, eax
jle case.0x49c2cf.19
mov edi, dword [esp + 0x24]
mov ecx, edi
call fcn.0045e050
push dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
imul eax, esi
push ebx
push edi
add eax, ebp
push eax
call fcn.0049c1b0
inc esi
cmp esi, dword [esp + 0x18]
jl 0x49c663
jmp case.0x49c2cf.19
xorps xmm0, xmm0
push edi
movlpd qword [esp + 0xa0], xmm0
movlpd qword [esp + 0xa8], xmm0
call fcn.0049d8a0
add esp, 4
push eax
push esi
call fcn.0049d8a0
add esp, 4
push eax
call fcn.0049d570
mov ebp, dword [esp + 0x1c]
mov esi, eax
add esp, 8
test esi, esi
jle 0x49c8dc
nop word [eax + eax]
movzx eax, byte [ebp + 0xc]
mov ecx, ebx
push 2
push eax
lea eax, [esp + 0xa4]
push eax
call fcn.00469880
sub esi, 1
jne 0x49c6d0
jmp 0x49c8dc
cmp dword [esi + 8], 0
je case.0x49c2cf.19
cmp dword [edi + 8], 0
je case.0x49c2cf.19
push esi
call fcn.0049d8a0
push edi
mov esi, eax
call fcn.0049d8a0
push eax
push esi
call fcn.0049d570
mov ecx, dword [esp + 0x38]
add esp, 0x10
mov dword [esp + 0x18], eax
call fcn.00468e30
mov ecx, edi
mov dword [esp + 0x60], eax
call fcn.00468e30
mov edi, dword [esp + 0x28]
mov ecx, edi
mov dword [esp + 0x20], eax
call fcn.00468990
cdq
idiv esi
cmp dword [esp + 0x18], 0
mov dword [esp + 0x50], eax
jle case.0x49c2cf.19
push ebp
mov ecx, edi
call fcn.00468e60
lea ecx, [esp + 0x3c]
mov dword [esp + 0x40], 0
push ecx
lea ecx, [esp + 0x44]
mov dword [esp + 0x48], 0
push ecx
mov ecx, dword [esp + 0x68]
push eax
mov dword [esp + 0x54], connect
mov dword [esp + 0x48], 0
call fcn.00469370
xor esi, esi
xor edi, edi
cmp dword [esp + 0x44], esi
jle 0x49c7d3
mov ebx, dword [esp + 0x20]
nop
lea eax, [esp + 0x58]
mov ecx, ebx
push eax
mov eax, dword [esp + 0x44]
push dword [eax + esi*4]
call fcn.00469320
test eax, eax
jne 0x49c7bd
or edi, dword [esp + 0x58]
jmp 0x49c7c5
mov eax, dword [esp + 0x58]
or dword [esp + 0x3c], eax
inc esi
cmp esi, dword [esp + 0x44]
jl 0x49c7a0
mov ebx, dword [esp + 0x2b8]
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x49c7fb
lea ecx, [esp + 0x24]
mov dword [esp + 0x24], 0
push ecx
lea ecx, [esp + 0x44]
push ecx
mov ecx, dword [esp + 0x28]
push eax
call fcn.00469370
or edi, dword [esp + 0x24]
mov esi, dword [esp + 0x50]
mov eax, esi
sub eax, 1
je 0x49c824
sub eax, 1
je 0x49c81a
sub eax, 2
jne 0x49c82c
push edi
mov ecx, ebx
call fcn.00469680
jmp 0x49c82c
push edi
mov ecx, ebx
call fcn.00469640
jmp 0x49c82c
push edi
mov ecx, ebx
call fcn.00469600
mov eax, dword [esp + 0x48]
add ebp, esi
mov dword [esp + 0x44], 0
test eax, eax
js 0x49c858
and eax, 0x3fffffff
mov ecx, 0x7d8954
shl eax, 2
push eax
mov eax, dword [0x7d8954]
push dword [esp + 0x44]
call dword [eax + 0x10]
sub dword [esp + 0x18], 1
mov edi, dword [esp + 0x28]
mov dword [esp + 0x40], 0
mov dword [esp + 0x48], connect
jne 0x49c755
jmp case.0x49c2cf.19
push 0x200
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x98]
call fcn.004745a0
push str.Unknown_class_member_found_during_write_of_data.
lea ecx, [esp + 0x94]
call fcn.0045cb80
mov ecx, dword [0x884c54]
lea edx, [esp + 0xac]
push 0x246
push str.CopierhkObjectCopier.cpp
push edx
mov eax, dword [ecx]
push 0x641e3e03
push 3
call dword [eax + 0xc]
test eax, eax
je 0x49c8cc
int3
lea ecx, [esp + 0x90]
call fcn.0045caa0
mov ebp, dword [esp + 0x14]
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x2bc]
inc edi
mov dword [esp + 0x1c], edi
call fcn.0045df70
cmp edi, eax
jl 0x49c211
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x20]
mov ebp, dword [esp + 0x4c]
mov esi, ebp
mov ecx, dword [esp + 0x2bc]
sub esi, eax
call fcn.0045e050
add eax, esi
push eax
push ebx
call fcn.0049db10
xor esi, esi
add esp, 8
mov dword [esp + 0x1c], esi
cmp dword [esp + 0x30], esi
jle 0x49ca47
xor ecx, ecx
mov dword [esp + 0x20], ecx
nop word [eax + eax]
mov eax, dword [esp + 0x2c]
mov edx, dword [ecx + eax + 4]
mov edi, dword [ecx + eax]
mov ebp, dword [ecx + eax + 8]
movzx ecx, word [ecx + eax + 0xc]
mov dword [esp + 0x50], edx
mov dword [esp + 0x24], ecx
test cx, cx
je 0x49ca29
mov al, byte [edx + 0xd]
test al, al
je 0x49ca29
cmp al, 0x14
je 0x49ca29
cmp al, 0x1d
je 0x49ca29
cmp al, 0x21
je 0x49ca29
cmp al, 0x19
jne 0x49c9eb
mov ecx, edi
call fcn.00468e20
mov ecx, dword [esp + 0x50]
mov edi, eax
call fcn.00468e20
mov ecx, eax
mov dword [esp + 0x50], ecx
test edi, edi
je 0x49ca29
test ecx, ecx
je 0x49ca29
mov eax, dword [esp + 0x24]
xor esi, esi
movzx eax, ax
test eax, eax
jle 0x49ca25
nop dword [eax]
push ecx
push ebx
push edi
mov ecx, edi
call fcn.0045e050
mov ecx, dword [esp + 0x20]
imul eax, esi
add eax, ebp
push eax
call fcn.0049c1b0
mov ecx, dword [esp + 0x24]
inc esi
movzx eax, cx
mov ecx, dword [esp + 0x50]
cmp esi, eax
jl 0x49c9c0
jmp 0x49ca25
cmp al, 0x1c
je 0x49ca29
push ebp
cmp al, 0x1e
jne 0x49ca0c
movzx eax, cx
push eax
mov eax, dword [esp + 0x1c]
movzx eax, byte [eax + 0xc]
push eax
push ebx
call fcn.0049da50
add esp, 0x10
jmp 0x49ca29
movzx esi, al
movzx eax, cx
mov ecx, edx
push eax
call fcn.00468dc0
push eax
push esi
push ebx
call fcn.0049d940
add esp, 0x14
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
inc esi
add ecx, 0x10
mov dword [esp + 0x1c], esi
mov dword [esp + 0x20], ecx
cmp esi, dword [esp + 0x30]
jl 0x49c940
mov ebp, dword [esp + 0x4c]
mov eax, dword [esp + 0x34]
mov dword [esp + 0x30], 0
test eax, eax
js 0x49ca71
and eax, 0x3fffffff
mov ecx, 0x7d8950
shl eax, 4
push eax
mov eax, dword [0x7d8950]
push dword [esp + 0x30]
call dword [eax + 0x10]
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x29c
ret 0x10