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

Disassembly:
push 0xffffffffffffffff
push 0x4e3c08
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x50
mov al, byte [esp + 0x64]
push ebx
push ebp
push esi
push edi
mov edi, ecx
xor ebx, ebx
mov dword [esp + 0x10], edi
mov byte [esp + 0x50], al
mov dword [esp + 0x54], ebx
mov dword [esp + 0x58], ebx
mov dword [esp + 0x5c], ebx
mov esi, dword [esp + 0x78]
mov ecx, dword [esp + 0x70]
push esi
lea edx, [esp + 0x54]
push ecx
push edx
mov dword [esp + 0x74], ebx
call fcn.004c78d0
mov al, byte [esp + 0x80]
add esp, 0xc
mov byte [esp + 0x40], al
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], ebx
lea ecx, [esp + 0x40]
push esi
push ecx
mov ecx, edi
mov byte [esp + 0x70], 1
call fcn.004c6fc0
mov eax, dword [esp + 0x54]
cmp eax, ebx
jne 0x4c8528
xor ebp, ebp
jmp 0x4c8541
mov ecx, dword [esp + 0x58]
sub ecx, eax
mov eax, 0x51eb851f
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add edx, eax
mov ebp, edx
mov esi, dword [esp + 0x44]
mov dword [esp + 0x14], ebp
cmp esi, ebx
jne 0x4c8551
xor edx, edx
jmp 0x4c8568
mov ecx, dword [esp + 0x48]
mov eax, 0x51eb851f
sub ecx, esi
imul ecx
sar edx, 0xa
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
mov al, byte [esp + 0x74]
mov dword [esp + 0x20], edx
mov dword [esp + 0x18], ebx
mov byte [esp + 0x30], al
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x3c], ebx
cmp edx, ebx
mov byte [esp + 0x68], 2
jle 0x4c89d1
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x2c], edx
jmp 0x4c859f
mov esi, dword [esp + 0x44]
mov ecx, dword [esp + 0x1c]
xor eax, eax
add esi, ecx
cmp ebp, ebx
jle 0x4c85c0
mov ecx, dword [esi]
mov edi, dword [esp + 0x54]
cmp dword [edi], ecx
je 0x4c8618
inc eax
add edi, 0xc80
cmp eax, ebp
jl 0x4c85b1
mov eax, dword [esi + 0x18]
cmp eax, 4
je 0x4c89b4
cmp eax, ebx
je 0x4c88d4
push ebx
push str.Merge___Server_Deleted
call fcn.004b8490
mov ecx, eax
call fcn.004be620
mov edx, dword [esi]
push edx
call fcn.004b8490
mov ecx, eax
call fcn.004be5c0
mov eax, dword [esi]
mov ecx, dword [esp + 0x10]
push eax
call fcn.004cd9c0
push ebx
push 0x50e1d8
call fcn.004b8490
mov ecx, eax
call fcn.004be620
jmp 0x4c89b4
cmp edi, esi
mov dword [edi + 0x18], 3
je 0x4c88bd
mov eax, dword [edi]
mov ecx, dword [esi]
cmp eax, ecx
jne 0x4c8640
push eax
call fcn.004c0b10
add esp, 4
test eax, eax
jne 0x4c88bd
mov edx, dword [edi]
mov eax, dword [esi]
cmp edx, eax
je 0x4c8654
mov dword [edi + 0x18], 1
jmp 0x4c8727
mov eax, dword [edi + 0x14]
mov ecx, dword [esi + 0x14]
cmp eax, ecx
je 0x4c8670
cmp dword [esi + 4], 2
je 0x4c8670
mov dword [edi + 0x18], 6
jmp 0x4c8727
mov ecx, dword [edi + 4]
mov eax, dword [esi + 4]
cmp ecx, eax
je 0x4c8686
mov dword [edi + 0x18], 2
jmp 0x4c8727
mov edx, dword [edi + 8]
mov eax, dword [esi + 8]
cmp edx, eax
je 0x4c869c
mov dword [edi + 0x18], 3
jmp 0x4c8727
mov eax, dword [edi + 0xc]
mov ecx, dword [esi + 0xc]
cmp eax, ecx
je 0x4c86af
mov dword [edi + 0x18], 4
jmp 0x4c8727
lea ecx, [esi + 0x48]
lea edx, [edi + 0x48]
push ecx
push edx
call dword [sym.imp.SHLWAPI.dll_StrCmpIW]
test eax, eax
je 0x4c86ca
mov dword [edi + 0x18], 8
jmp 0x4c8727
lea eax, [esi + 0x250]
lea ecx, [edi + 0x250]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x4c86eb
mov dword [edi + 0x18], 9
jmp 0x4c8727
lea edx, [esi + 0x1c]
lea eax, [edi + 0x1c]
push edx
push eax
call fcn.004c0a60
add esp, 8
test eax, eax
je 0x4c8708
mov dword [edi + 0x18], 0xc
jmp 0x4c8727
lea ecx, [esi + 0x2c]
lea edx, [edi + 0x2c]
push ecx
push edx
call fcn.004c0a60
add esp, 8
test eax, eax
je 0x4c88bd
mov dword [edi + 0x18], 0xd
lea eax, [esi + 0x2c]
lea ebp, [edi + 0x2c]
push eax
push ebp
mov dword [esp + 0x20], 1
call fcn.004c0a60
add esp, 8
test eax, eax
je 0x4c885d
lea ebx, [esi + 0x1c]
lea ecx, [edi + 0x1c]
push ebx
push ecx
call fcn.004c0a60
add esp, 8
test eax, eax
je 0x4c8836
mov edx, dword [esp + 0x10]
add edx, 0x3b0
push edx
push ebx
call fcn.004c81f0
mov eax, dword [esp + 0x18]
fstp qword [esp + 0x2c]
add eax, 0x3c0
push eax
push ebp
call fcn.004c81f0
fcomp qword [esp + 0x34]
add esp, 0x10
fnstsw ax
test ah, 1
je 0x4c87ed
mov ecx, dword [edi + 0x18]
push 0
push str.Merge___Local_Modify_Over_Server_
mov dword [esi + 0x18], ecx
call fcn.004b8490
mov ecx, eax
call fcn.004be620
mov edx, dword [esi]
push edx
call fcn.004b8490
mov ecx, eax
call fcn.004be5c0
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x78]
push eax
push ecx
push 2
push esi
call fcn.004b8490
mov ecx, eax
call fcn.004bd9c0
push 0
push 0x50e1d8
call fcn.004b8490
mov ecx, eax
call fcn.004be620
xor ebx, ebx
jmp 0x4c88bd
push 0
push str.Merge___Server_Modify_Over_Local
call fcn.004b8490
mov ecx, eax
call fcn.004be620
mov edx, dword [esi]
push edx
call fcn.004b8490
mov ecx, eax
call fcn.004be5c0
mov eax, dword [esi]
push eax
mov ecx, dword [esp + 0x14]
push edi
call fcn.004c7b60
push 0
push 0x50e0fc
call fcn.004b8490
mov ecx, eax
call fcn.004be620
xor ebx, ebx
jmp 0x4c88bd
push 0
push str.Merge___Server_Time_Same_Local_Time_Different
call fcn.004b8490
mov ecx, eax
call fcn.004be620
mov ecx, dword [esi]
push ecx
call fcn.004b8490
mov ecx, eax
call fcn.004be5c0
mov edx, dword [esi]
push edx
jmp 0x4c8812
lea eax, [esi + 0x1c]
add edi, 0x1c
push eax
push edi
call fcn.004c0a60
add esp, 8
test eax, eax
je 0x4c88bd
push ebx
push str.Merge___Server_Time_Different_Over_Same
call fcn.004b8490
mov ecx, eax
call fcn.004be620
mov ecx, dword [esi]
push ecx
call fcn.004b8490
mov ecx, eax
call fcn.004be5c0
mov edx, dword [esp + 0x74]
mov eax, dword [esp + 0x78]
push edx
push eax
push 2
push esi
call fcn.004b8490
mov ecx, eax
call fcn.004bd9c0
push ebx
push 0x50e0fc
call fcn.004b8490
mov ecx, eax
call fcn.004be620
cmp dword [esi + 4], 2
jne 0x4c89b0
mov ecx, dword [esp + 0x38]
push esi
push 1
push ecx
jmp 0x4c89a7
cmp ebp, ebx
mov dword [esp + 0x18], 1
jle 0x4c8946
mov ecx, dword [esp + 0x14]
lea ebx, [esi + 0x48]
xor ebp, ebp
mov dword [esp + 0x24], ecx
mov edx, dword [esp + 0x54]
lea edi, [edx + ebp]
lea eax, [edi + 0x48]
push eax
push ebx
call dword [sym.imp.SHLWAPI.dll_StrCmpW]
test eax, eax
jne 0x4c8935
mov ecx, dword [esi + 4]
mov eax, dword [edi + 4]
cmp ecx, eax
jne 0x4c8935
mov edx, dword [esi]
mov eax, dword [edi]
cmp edx, eax
je 0x4c8935
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x78]
push eax
push ecx
push 3
push edi
mov dword [edi + 0x18], 3
call fcn.004b8490
mov ecx, eax
call fcn.004bd9c0
mov eax, dword [esp + 0x24]
add ebp, 0xc80
dec eax
mov dword [esp + 0x24], eax
jne 0x4c88ed
xor ebx, ebx
push ebx
push str.Merge___Local_New_Item
call fcn.004b8490
mov ecx, eax
call fcn.004be620
mov edx, dword [esi]
push edx
call fcn.004b8490
mov ecx, eax
call fcn.004be5c0
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x78]
push eax
push ecx
push 1
push esi
call fcn.004b8490
mov ecx, eax
call fcn.004bd9c0
push ebx
push 0x50e1d8
call fcn.004b8490
mov ecx, eax
call fcn.004be620
cmp dword [esi + 4], 2
jne 0x4c89b0
cmp dword [esi], 1
je 0x4c89b0
mov edx, dword [esp + 0x38]
push esi
push 1
push edx
lea ecx, [esp + 0x3c]
call fcn.004c0060
mov ebp, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x2c]
add ecx, 0xc80
dec eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x2c], eax
jne 0x4c859b
mov edi, dword [esp + 0x10]
xor ebp, ebp
xor ebx, ebx
mov eax, dword [edi + 0x614]
test eax, eax
je 0x4c8ab1
mov ecx, dword [edi + 0x618]
sub ecx, eax
mov eax, 0x51d1569d
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp ebp, edx
jae 0x4c8ab1
mov esi, dword [edi + 0x614]
mov eax, dword [esp + 0x78]
add esi, ebx
mov ecx, dword [esi]
cmp ecx, eax
jne 0x4c8aa5
mov eax, dword [esi + 8]
mov dword [esi + 0x1c], 3
cmp eax, 2
mov dword [esp + 0x18], 1
jne 0x4c8a51
mov ecx, dword [esi + 4]
lea eax, [esi + 4]
cmp ecx, 1
je 0x4c8a51
mov edx, dword [esp + 0x38]
push eax
push 1
push edx
lea ecx, [esp + 0x3c]
call fcn.004c0060
push 0
push str.Merge___Local_Or_Server_Moved_
call fcn.004b8490
mov ecx, eax
call fcn.004be620
mov eax, dword [esi + 4]
lea edi, [esi + 4]
push eax
call fcn.004b8490
mov ecx, eax
call fcn.004be5c0
mov ecx, dword [esp + 0x74]
mov edx, dword [esi]
push ecx
push edx
push 4
push edi
call fcn.004b8490
mov ecx, eax
call fcn.004bd9c0
push 0
push 0x50e0fc
call fcn.004b8490
mov ecx, eax
call fcn.004be620
mov edi, dword [esp + 0x10]
inc ebp
add ebx, 0xc84
jmp 0x4c89d9
mov eax, dword [esp + 0x14]
mov dword [esp + 0x2c], 0
test eax, eax
jle 0x4c8c4d
mov edi, dword [esp + 0x74]
mov ebx, dword [esp + 0x78]
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x1c], 0
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x1c]
lea esi, [eax + ecx]
mov eax, dword [eax + ecx]
cmp eax, 1
je 0x4c8c4d
cmp dword [esi + 0x18], 3
je 0x4c8c2a
mov edx, dword [esp + 0x20]
xor ecx, ecx
test edx, edx
jle 0x4c8b1d
mov edx, dword [esp + 0x44]
cmp eax, dword [edx]
je 0x4c8c2a
inc ecx
add edx, 0xc80
cmp ecx, dword [esp + 0x20]
jl 0x4c8b08
mov ecx, dword [ebp + 0x62c]
cmp eax, ecx
jg 0x4c8b2e
cmp eax, 0x4190ab00
jge 0x4c8b33
cmp eax, dword [ebp + 0xc]
jg 0x4c8b95
push eax
mov ecx, ebp
call fcn.004c8440
test eax, eax
jne 0x4c8c2a
push eax
push str.Merge___Local_Deleted_Item__Delete_Server_Item
mov dword [esp + 0x20], 1
call fcn.004b8490
mov ecx, eax
call fcn.004be620
mov edx, dword [esi]
push edx
call fcn.004b8490
mov ecx, eax
call fcn.004be5c0
push edi
push ebx
push 3
push esi
call fcn.004b8490
mov ecx, eax
call fcn.004bd9c0
push 0
push 0x50e0fc
call fcn.004b8490
mov ecx, eax
call fcn.004be620
jmp 0x4c8c2a
cmp eax, ecx
jg 0x4c8ba4
cmp eax, 0x4190ab00
jge 0x4c8c2a
push 0xffffffffffffffff
push esi
mov ecx, ebp
call fcn.004c2290
cmp eax, dword [esi]
jne 0x4c8c19
push 0
push str.Merge___Server_Add_Item_Add_Item_to_Local_
mov dword [esp + 0x20], 1
call fcn.004b8490
mov ecx, eax
call fcn.004be620
mov eax, dword [esi]
push eax
call fcn.004b8490
mov ecx, eax
call fcn.004be5c0
push edi
push ebx
push 2
push esi
call fcn.004b8490
mov ecx, eax
call fcn.004bd9c0
push 0
push 0x50e1d8
call fcn.004b8490
mov ecx, eax
call fcn.004be620
cmp dword [esi + 4], 2
jne 0x4c8c2a
mov ecx, dword [esp + 0x38]
push esi
push 1
push ecx
lea ecx, [esp + 0x3c]
call fcn.004c0060
jmp 0x4c8c2a
push edi
push ebx
push 3
push esi
call fcn.004b8490
mov ecx, eax
call fcn.004bd9c0
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
inc eax
add edx, 0xc80
cmp eax, ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x1c], edx
jl 0x4c8ad9
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4c8c68
mov edx, dword [esp + 0x74]
push 0x50f3b4
push edx
call dword [sym.imp.MSVCRT.dll_fprintf]
add esp, 8
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
test eax, eax
jne 0x4c8c78
xor edx, edx
jmp 0x4c8c8b
sub ecx, eax
mov eax, 0x51eb851f
imul ecx
sar edx, 0xa
mov eax, edx
shr eax, 0x1f
add edx, eax
test edx, edx
jle 0x4c8cbc
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x74]
xor esi, esi
mov edi, edx
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x70]
push ebx
mov edx, dword [ecx + esi]
mov ecx, dword [esp + 0x14]
push edx
push ebp
push eax
call fcn.004c84a0
add esi, 0xc80
dec edi
jne 0x4c8c9b
mov ecx, dword [esp + 0x34]
push ecx
call fcn.004ace19
mov edx, dword [esp + 0x48]
xor esi, esi
push edx
mov dword [esp + 0x3c], esi
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], esi
call fcn.004ace19
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x4c], esi
push eax
mov dword [esp + 0x54], esi
mov dword [esp + 0x58], esi
call fcn.004ace19
mov ecx, dword [esp + 0x6c]
add esp, 0xc
mov dword fs:[0], ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5c
ret 0x10