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

Disassembly:
push 0xffffffffffffffff
push 0x507a8e
mov eax, dword fs:[0]
push eax
sub esp, 0xf4
mov eax, dword [0x5375a0]
xor eax, esp
mov dword [esp + 0xf0], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x5375a0]
xor eax, esp
push eax
lea eax, [esp + 0x108]
mov dword fs:[0], eax
mov esi, ecx
mov ebx, dword [esp + 0x118]
xor ebp, ebp
mov edi, edx
mov dword [esp + 0x20], edi
mov dword [esp + 0x54], ebx
cmp ebx, ebp
je 0x460483
cmp dword [esi], 0xc
jl 0x460483
call fcn.00469a90
mov dword [esp + 0x58], eax
cmp eax, ebp
jne 0x45fa1f
mov ecx, edi
call fcn.00437ec0
push str.t_picFaceCloudDict_GetInstance_failed.
jmp 0x46048f
call fcn.00460b60
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], edx
mov dword [esp + 0x30], fcn.004c61e0
mov dword [esp + 0x34], fcn.004c83aa
mov dword [esp + 0x38], fcn.004c6103
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x40], 0x1fff8
mov dword [esp + 0x2c], vtable.t_heap.0
mov dword [esp + 0x110], ebp
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x18], vtable.t_lockerMemSharable.0
push 4
push ebx
mov byte [esp + 0x118], 1
lea eax, [esp + 0xbc]
push 4
push eax
mov dword [esp + 0xc4], ebp
mov dword [esp + 0x70], ebp
mov dword [esp + 0x34], ebp
call fcn.004c9cf6
push 4
lea ecx, [ebx + 4]
push ecx
lea edx, [esp + 0x78]
push 4
push edx
call fcn.004c9cf6
push 4
lea eax, [ebx + 8]
push eax
lea ecx, [esp + 0x4c]
push 4
push ecx
call fcn.004c9cf6
add esp, 0x30
cmp dword [esp + 0x60], 1
mov dword [esp + 0x48], 0xc
je 0x45fae1
push str.req_type_is_not_right.
mov ecx, edi
call fcn.00402790
jmp 0x46049e
mov eax, dword [esi]
mov ecx, dword [esp + 0x24]
cmp ecx, eax
je 0x45fb35
push eax
push str._respone_packet_size_:
push str._not_equal
push ecx
push str.packet_len_:
mov ecx, edi
call fcn.00402790
mov ecx, eax
call fcn.00438810
mov ecx, eax
call fcn.00438830
mov ecx, eax
call fcn.00438830
mov ecx, eax
call fcn.00438810
lea esi, [esp + 0x18]
mov byte [esp + 0x110], 0
call fcn.00427850
jmp 0x46049e
lea edx, [esp + 0x2c]
push edx
lea eax, [esp + 0x28]
mov ecx, ebx
lea edx, [esp + 0x4c]
call fcn.0045f4e0
add esp, 4
mov dword [esp + 0x64], eax
cmp eax, ebp
jne 0x45fba4
push str.parse_packet_failed.
mov ecx, edi
call fcn.00402790
lea esi, [esp + 0x18]
mov byte [esp + 0x110], 0
call fcn.00427850
mov dword [esp + 0x110], 0xffffffff
mov esi, dword [esp + 0x3c]
cmp esi, ebp
je 0x46049e
mov edi, dword [esp + 0x38]
lea esp, [esp]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
cmp esi, ebp
jne 0x45fb90
jmp 0x46049e
mov eax, dword [esp + 0x48]
lea esi, [eax + 4]
cmp dword [esp + 0x24], esi
jae 0x45fc04
push str.parse_packet_failed.
mov ecx, edi
call fcn.00402790
lea esi, [esp + 0x18]
mov byte [esp + 0x110], 0
call fcn.00427850
mov dword [esp + 0x110], 0xffffffff
mov esi, dword [esp + 0x3c]
cmp esi, ebp
je 0x46049e
mov edi, dword [esp + 0x38]
lea esp, [esp]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
cmp esi, ebp
jne 0x45fbf0
jmp 0x46049e
push 4
add eax, ebx
push eax
lea ecx, [esp + 0x54]
push 4
push ecx
mov dword [esp + 0x5c], 0
call fcn.004c9cf6
add esp, 0x10
cmp dword [esp + 0x4c], 0
mov ebp, esi
jg 0x45fc75
push str.parse_packet_failed.
mov ecx, edi
call fcn.00402790
lea esi, [esp + 0x18]
mov byte [esp + 0x110], 0
call fcn.00427850
mov dword [esp + 0x110], 0xffffffff
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x46049e
mov edi, dword [esp + 0x38]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
test esi, esi
jne 0x45fc61
jmp 0x46049e
call fcn.0046aed0
mov edx, dword [esp + 0x64]
mov dword [esp + 0xb8], eax
push edx
lea esi, [esp + 0x70]
mov eax, edi
call fcn.0046ae20
cmp dword [esp + 0x4c], 0
mov dword [esp + 0x50], 0
jle 0x46000f
xor eax, eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x68], eax
lea eax, [ebp + 8]
cmp dword [esp + 0x24], eax
jb 0x460094
push 4
lea ecx, [ebx + ebp]
push ecx
lea edx, [esp + 0x64]
push 4
push edx
call fcn.004c9cf6
add ebp, 4
push 4
lea eax, [ebx + ebp]
push eax
lea ecx, [esp + 0x80]
push 4
push ecx
call fcn.004c9cf6
add ebp, 4
lea esi, [ebp + 4]
add esp, 0x20
mov dword [esp + 0x28], 0
cmp dword [esp + 0x24], esi
jb 0x4600e4
push 4
add ebx, ebp
push ebx
lea edx, [esp + 0x30]
push 4
push edx
call fcn.004c9cf6
add esp, 0x10
lea eax, [esp + 0x94]
push eax
mov dword [esp + 0x4c], esi
call fcn.004765b0
mov byte [esp + 0x110], 2
mov eax, dword [esp + 0x28]
test eax, eax
jle 0x45fd9e
xor ebp, ebp
test eax, eax
jle 0x45fd85
mov esi, dword [esp + 0x54]
lea ecx, [esp + 0x2c]
push ecx
lea eax, [esp + 0x28]
mov ecx, esi
lea edx, [esp + 0x4c]
call fcn.0045f4e0
add esp, 4
mov dword [esp + 0xbc], eax
test eax, eax
je 0x460134
lea ebx, [esp + 0xbc]
lea edi, [esp + 0x94]
call fcn.00484e80
mov eax, dword [esp + 0x28]
inc ebp
cmp ebp, eax
jl 0x45fd3f
mov esi, dword [esp + 0x48]
mov edx, dword [esp + 0xa4]
sub edx, dword [esp + 0xa0]
sar edx, 2
cmp eax, edx
jne 0x460194
lea edi, [esi + 0x10]
cmp dword [esp + 0x24], edi
jl 0x4601f4
mov ebx, dword [esp + 0x54]
push 0x10
lea eax, [ebx + esi]
push eax
lea ecx, [esp + 0xfc]
push 0x10
push ecx
call fcn.004c9cf6
lea ebp, [edi + 4]
add esp, 0x10
mov dword [esp + 0x44], 0
cmp dword [esp + 0x24], ebp
jb 0x460254
push 4
lea edx, [ebx + edi]
push edx
lea eax, [esp + 0x4c]
push 4
push eax
call fcn.004c9cf6
mov eax, dword [esp + 0x54]
lea ecx, [eax + ebp]
add esp, 0x10
cmp dword [esp + 0x24], ecx
jl 0x4602b4
push eax
lea ecx, [esp + 0x30]
call fcn.004034e0
mov esi, eax
test esi, esi
je 0x460314
mov eax, dword [esp + 0x44]
push eax
lea edx, [ebx + ebp]
push edx
push eax
push esi
call fcn.004c9cf6
mov ecx, dword [esp + 0x54]
xor eax, eax
add esp, 0x10
add ebp, ecx
push ecx
mov ecx, esi
lea edx, [esp + 0xc4]
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], eax
mov dword [esp + 0xd0], eax
call fcn.004588f0
mov eax, 0x10
lea ecx, [esp + 0xc0]
lea edx, [esp + 0xf4]
nop
mov edi, dword [edx]
cmp edi, dword [ecx]
jne 0x45fe86
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x45fe70
jmp 0x45febe
movzx eax, byte [edx]
movzx edi, byte [ecx]
sub eax, edi
jne 0x45feb2
movzx eax, byte [edx + 1]
movzx edi, byte [ecx + 1]
sub eax, edi
jne 0x45feb2
movzx eax, byte [edx + 2]
movzx edi, byte [ecx + 2]
sub eax, edi
jne 0x45feb2
movzx eax, byte [edx + 3]
movzx ecx, byte [ecx + 3]
sub eax, ecx
sar eax, 0x1f
or eax, 1
jne 0x460374
mov edx, dword [esp + 0x5c]
xor eax, eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x68]
mov dword [esp + 0x72], edx
mov edx, dword [esp + 0x44]
mov dword [esp + 0x76], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x90], edx
cdq
xor ecx, ecx
add eax, dword [esp + 0xac]
mov word [esp + 0x70], cx
mov ecx, dword [esp + 0x28]
adc edx, dword [esp + 0xb0]
mov dword [esp + 0x7a], eax
lea eax, [ecx*4]
mov word [esp + 0x8a], cx
push eax
lea ecx, [esp + 0x30]
mov dword [esp + 0x90], esi
mov dword [esp + 0x82], edx
call fcn.004034e0
xor edi, edi
cmp dword [esp + 0x28], edi
mov dword [esp + 0x86], eax
jle 0x45ff8f
jmp 0x45ff70
lea esi, [esp + 0x94]
call fcn.00484dc0
mov eax, dword [eax]
mov ecx, dword [esp + 0x86]
mov dword [ecx + edi*4], eax
inc edi
cmp edi, dword [esp + 0x28]
jl 0x45ff70
mov edi, dword [esp + 0x20]
lea edx, [esp + 0x18]
push edx
mov eax, edi
call fcn.00427870
test al, al
je 0x4603d4
cmp dword [esp + 0x6c], 0
jne 0x45ffc3
lea eax, [esp + 0x70]
push eax
mov eax, dword [esp + 0x5c]
push edi
lea edx, [esp + 0x20]
call fcn.00469220
jmp 0x45ffdf
mov ecx, dword [esp + 0x58]
mov esi, dword [esp + 0x20]
push ecx
lea edi, [esp + 0x74]
lea ebx, [esp + 0x1c]
call fcn.00468c70
mov ebx, dword [esp + 0x54]
mov edi, esi
lea esi, [esp + 0x18]
call fcn.00458ac0
lea esi, [esp + 0x94]
mov byte [esp + 0x110], 1
call fcn.0044ca20
mov eax, dword [esp + 0x50]
inc eax
cmp eax, dword [esp + 0x4c]
mov dword [esp + 0x50], eax
jl 0x45fca4
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x46002e
cmp byte [esp + 0x11c], 0
je 0x460443
cmp eax, 2
jne 0x460443
lea edx, [esp + 0x18]
push edx
mov eax, edi
call fcn.00427870
mov ecx, edi
test al, al
jne 0x460429
push 0x524328
call fcn.00402790
lea esi, [esp + 0x18]
mov byte [esp + 0x110], 0
call fcn.00427850
mov dword [esp + 0x110], 0xffffffff
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x46049e
mov edi, dword [esp + 0x38]
lea ebx, [ebx]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
test esi, esi
jne 0x460080
jmp 0x46049e
push str.parse_packet_failed.
mov ecx, edi
call fcn.00402790
lea esi, [esp + 0x18]
mov byte [esp + 0x110], 0
call fcn.00427850
mov dword [esp + 0x110], 0xffffffff
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x46049e
mov edi, dword [esp + 0x38]
lea esp, [esp]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
test esi, esi
jne 0x4600d0
jmp 0x46049e
push str.parse_packet_failed.
mov ecx, edi
call fcn.00402790
lea esi, [esp + 0x18]
mov byte [esp + 0x110], 0
call fcn.00427850
mov dword [esp + 0x110], 0xffffffff
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x46049e
mov edi, dword [esp + 0x38]
lea esp, [esp]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
test esi, esi
jne 0x460120
jmp 0x46049e
mov ecx, dword [esp + 0x20]
push str.parse_packet_failed.
call fcn.00402790
lea esi, [esp + 0x94]
call fcn.0044ca20
lea esi, [esp + 0x18]
mov byte [esp + 0x110], 0
call fcn.00427850
mov dword [esp + 0x110], 0xffffffff
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x46049e
mov edi, dword [esp + 0x38]
lea ebx, [ebx]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
test esi, esi
jne 0x460180
jmp 0x46049e
mov ecx, dword [esp + 0x20]
push str.parse_packet_failed.
call fcn.00402790
lea esi, [esp + 0x94]
call fcn.0044ca20
lea esi, [esp + 0x18]
mov byte [esp + 0x110], 0
call fcn.00427850
mov dword [esp + 0x110], 0xffffffff
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x46049e
mov edi, dword [esp + 0x38]
lea ebx, [ebx]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
test esi, esi
jne 0x4601e0
jmp 0x46049e
mov ecx, dword [esp + 0x20]
push str.parse_packet_failed.
call fcn.00402790
lea esi, [esp + 0x94]
call fcn.0044ca20
lea esi, [esp + 0x18]
mov byte [esp + 0x110], 0
call fcn.00427850
mov dword [esp + 0x110], 0xffffffff
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x46049e
mov edi, dword [esp + 0x38]
lea ebx, [ebx]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
test esi, esi
jne 0x460240
jmp 0x46049e
mov ecx, dword [esp + 0x20]
push str.parse_packet_failed.
call fcn.00402790
lea esi, [esp + 0x94]
call fcn.0044ca20
lea esi, [esp + 0x18]
mov byte [esp + 0x110], 0
call fcn.00427850
mov dword [esp + 0x110], 0xffffffff
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x46049e
mov edi, dword [esp + 0x38]
lea ebx, [ebx]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
test esi, esi
jne 0x4602a0
jmp 0x46049e
mov ecx, dword [esp + 0x20]
push str.parse_packet_failed.
call fcn.00402790
lea esi, [esp + 0x94]
call fcn.0044ca20
lea esi, [esp + 0x18]
mov byte [esp + 0x110], 0
call fcn.00427850
mov dword [esp + 0x110], 0xffffffff
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x46049e
mov edi, dword [esp + 0x38]
lea ebx, [ebx]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
test esi, esi
jne 0x460300
jmp 0x46049e
mov ecx, dword [esp + 0x20]
push str.parse_packet_failed.
call fcn.00402790
lea esi, [esp + 0x94]
call fcn.0044ca20
lea esi, [esp + 0x18]
mov byte [esp + 0x110], 0
call fcn.00427850
mov dword [esp + 0x110], 0xffffffff
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x46049e
mov edi, dword [esp + 0x38]
lea ebx, [ebx]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
test esi, esi
jne 0x460360
jmp 0x46049e
mov ecx, dword [esp + 0x20]
push str.parse_packet_failed.
call fcn.00402790
lea esi, [esp + 0x94]
call fcn.0044ca20
lea esi, [esp + 0x18]
mov byte [esp + 0x110], 0
call fcn.00427850
mov dword [esp + 0x110], 0xffffffff
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x46049e
mov edi, dword [esp + 0x38]
lea ebx, [ebx]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
test esi, esi
jne 0x4603c0
jmp 0x46049e
push 0x524328
mov ecx, edi
call fcn.00402790
lea esi, [esp + 0x94]
call fcn.0044ca20
lea esi, [esp + 0x18]
mov byte [esp + 0x110], 0
call fcn.00427850
mov dword [esp + 0x110], 0xffffffff
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x46049e
mov edi, dword [esp + 0x38]
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
test esi, esi
jne 0x460418
jmp 0x46049e
mov eax, dword [esp + 0x64]
push eax
mov eax, dword [esp + 0xbc]
call fcn.0046adc0
lea esi, [esp + 0x18]
call fcn.00458ac0
lea esi, [esp + 0x18]
mov byte [esp + 0x110], 0
call fcn.00427850
mov dword [esp + 0x110], 0xffffffff
mov esi, dword [esp + 0x3c]
test esi, esi
je 0x46047f
mov edi, dword [esp + 0x38]
jmp 0x460470
mov eax, esi
mov esi, dword [esi + 4]
push eax
call edi
add esp, 4
test esi, esi
jne 0x460470
mov al, 1
jmp 0x4604a0
mov ecx, edi
call fcn.00437ec0
push str.ParseCloudResp_param_invalid.
push 0x5192f4
mov edx, eax
call fcn.004392f0
add esp, 8
xor al, al
mov ecx, dword [esp + 0x108]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xf0]
xor ecx, esp
call fcn.004c60f4
add esp, 0x100
ret