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

Disassembly:
push 0xffffffffffffffff
push 0x4f6d38
mov eax, dword fs:[0]
push eax
sub esp, 0x50
push ebx
push ebp
push esi
push edi
mov eax, dword [0x53fa2c]
xor eax, esp
push eax
lea eax, [esp + 0x64]
mov dword fs:[0], eax
mov dword [esp + 0x40], ecx
mov dword [esp + 0x6c], 0
push 0
push 0x504bd4
lea ecx, [esp + 0x84]
call dword [sym.imp.mfc90.dll_Ordinal_2481]
or esi, 0xffffffff
cmp eax, esi
jne 0x4c0d29
push 0
push 0x518f64
lea ecx, [esp + 0x84]
call dword [sym.imp.mfc90.dll_Ordinal_2481]
cmp eax, esi
jne 0x4c0d29
push 0
push 0x50ac08
lea ecx, [esp + 0x84]
call dword [sym.imp.mfc90.dll_Ordinal_2481]
cmp eax, esi
jne 0x4c0d29
push 0
push 0x5028f8
lea ecx, [esp + 0x84]
call dword [sym.imp.mfc90.dll_Ordinal_2481]
cmp eax, esi
jne 0x4c0d29
mov eax, dword [esp + 0x7c]
mov ecx, dword [0x10de36c]
push eax
push ecx
call dword [sym.imp.MSVCR90.dll__stricmp]
add esp, 8
test eax, eax
je 0x4c0d29
lea edx, [esp + 0x7c]
push edx
mov ecx, 0x10de36c
call dword [sym.imp.mfc90.dll_Ordinal_817]
test byte [0x10430e4], 1
je 0x4c0d29
test dword [0x103a364], 0x4000000
lea ebx, [esi + 4]
jne 0x4c0bdd
mov ecx, dword [0x10dc514]
inc ecx
mov eax, 0x51eb851f
mul ecx
shr edx, 5
imul edx, edx, 0x64
mov dword [0x10dc514], ecx
sub ecx, edx
jne 0x4c0be4
push ebx
call dword [sym.imp.KERNEL32.dll_Sleep]
lea ecx, [esp + 0x50]
call sub.mfc90.dll_Ordinal_580
mov byte [esp + 0x6c], 1
push 0
push ecx
lea eax, [esp + 0x84]
mov ecx, esp
mov dword [esp + 0x44], esp
push eax
call dword [sym.imp.mfc90.dll_Ordinal_300]
mov byte [esp + 0x74], 2
lea ecx, [esp + 0x58]
push ecx
push ecx
mov ecx, esp
mov dword [esp + 0x54], esp
push 0x502ba4
call dword [sym.imp.mfc90.dll_Ordinal_310]
mov byte [esp + 0x7c], bl
mov byte [esp + 0x7c], 1
call fcn.004d90e0
mov eax, dword [0x103a97c]
add esp, 0x10
cmp eax, 0x48
je 0x4c0c45
cmp eax, 0x50
jne 0x4c0c60
mov edx, dword [esp + 0x58]
push 0xb
push edx
push str.ProcessEDRL_OK_003__d___d_
push 8
call fcn.0043d500
mov eax, dword [0x103a97c]
add esp, 0x10
cmp dword [esp + 0x58], 0xb
jl 0x4c0d1b
test eax, eax
je 0x4c0c83
mov eax, dword [esp + 0x7c]
push eax
push str.ProcessEDRL_OK_1__s_
push 8
call fcn.0043d500
add esp, 0xc
cmp dword [esp + 0x58], 0
jg 0x4c0c8f
call sub.mfc90.dll_Ordinal_1252
mov ecx, dword [esp + 0x54]
push ecx
lea ecx, [esp + 0x20]
call dword [sym.imp.mfc90.dll_Ordinal_300]
mov byte [esp + 0x6c], 4
cmp dword [esp + 0x58], 1
jg 0x4c0caf
call sub.mfc90.dll_Ordinal_1252
mov eax, dword [esp + 0x54]
add eax, 4
push eax
lea ecx, [esp + 0x2c]
call dword [sym.imp.mfc90.dll_Ordinal_300]
mov byte [esp + 0x6c], 5
mov edx, dword [esp + 0x28]
push edx
call dword [sym.imp.MSVCR90.dll_atoi]
add esp, 4
mov dword [esp + 0x3c], eax
test eax, 0x300
jne 0x4c0d32
cmp eax, 2
je 0x4c0d32
cmp byte [esp + 0x80], 0
jne 0x4c0d32
lea eax, [esp + 0x7c]
push eax
mov ecx, 0x10dd318
call sub.mfc90.dll_Ordinal_1041
mov byte [esp + 0x6c], 4
lea ecx, [esp + 0x28]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov byte [esp + 0x6c], 1
lea ecx, [esp + 0x1c]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov byte [esp + 0x6c], 0
lea ecx, [esp + 0x50]
call sub.mfc90.dll_Ordinal_781
mov dword [esp + 0x6c], esi
jmp 0x4c136b
cmp dword [esp + 0x58], 2
jg 0x4c0d3e
call sub.mfc90.dll_Ordinal_1252
mov eax, dword [esp + 0x54]
add eax, 8
push eax
lea ecx, [esp + 0x3c]
call dword [sym.imp.mfc90.dll_Ordinal_300]
mov byte [esp + 0x6c], 6
cmp dword [esp + 0x58], ebx
jg 0x4c0d60
call sub.mfc90.dll_Ordinal_1252
mov eax, dword [esp + 0x54]
add eax, 0xc
push eax
lea ecx, [esp + 0x28]
call dword [sym.imp.mfc90.dll_Ordinal_300]
mov byte [esp + 0x6c], 7
push 0
push 0x502d68
lea ecx, [esp + 0x2c]
call dword [sym.imp.mfc90.dll_Ordinal_2481]
test eax, eax
je 0x4c0da0
push 0x4ff418
push 0x502d68
lea ecx, [esp + 0x2c]
call dword [sym.imp.mfc90.dll_Ordinal_5924]
cmp dword [esp + 0x58], 4
jg 0x4c0dac
call sub.mfc90.dll_Ordinal_1252
mov ecx, dword [esp + 0x54]
mov eax, dword [ecx + 0x10]
push 0xa
lea edx, [esp + 0x50]
push edx
push eax
call dword [sym.imp.MSVCR90.dll__strtoi64]
add esp, 0xc
lea ecx, [esp + 0x34]
mov ebx, eax
mov dword [esp + 0x48], edx
call dword [sym.imp.mfc90.dll_Ordinal_316]
mov byte [esp + 0x6c], 8
lea ecx, [esp + 0x30]
call dword [sym.imp.mfc90.dll_Ordinal_316]
mov byte [esp + 0x6c], 9
cmp dword [esp + 0x58], 5
jg 0x4c0df4
call sub.mfc90.dll_Ordinal_1252
mov eax, dword [esp + 0x54]
add eax, 0x14
push eax
lea ecx, [esp + 0x34]
call dword [sym.imp.mfc90.dll_Ordinal_817]
cmp dword [esp + 0x58], 6
jg 0x4c0e12
call sub.mfc90.dll_Ordinal_1252
mov eax, dword [esp + 0x54]
add eax, 0x18
push eax
lea ecx, [esp + 0x38]
call dword [sym.imp.mfc90.dll_Ordinal_817]
push 0x1b80
call sub.mfc90.dll_Ordinal_798
push 0x1b80
mov ebp, eax
push 0
push ebp
call sub.MSVCR90.dll_memset
mov esi, dword [esp + 0x48]
add esp, 0x10
cmp dword [esi - 0xc], 0x400
jae 0x4c0e61
mov ecx, esi
lea edx, [ebp + 0x204]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x4c0e55
jmp 0x4c0e71
lea edi, [ebp + 0x204]
mov ecx, 0xff
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
push 0x5116d8
push 0x502f14
lea ecx, [esp + 0x2c]
call dword [sym.imp.mfc90.dll_Ordinal_5924]
mov esi, dword [esp + 0x24]
cmp dword [esi - 0xc], 0xa00
jae 0x4c0eac
mov ecx, esi
lea edx, [ebp + 0x60c]
lea ebx, [ebx]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x4c0ea0
jmp 0x4c0ebc
lea edi, [ebp + 0x60c]
mov ecx, 0x27f
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov eax, dword [esp + 0x48]
mov dword [ebp + 0x1820], ebx
mov dword [ebp + 0x1824], eax
mov dword [ebp + 0x604], 0x8000
mov ecx, dword [esp + 0x28]
push ecx
call fcn.004d8d70
mov dword [ebp + 0x608], eax
mov esi, dword [esp + 0x38]
mov eax, dword [esi - 0xc]
add esp, 4
cmp eax, 0x104
jae 0x4c0f0c
mov ecx, esi
lea edx, [ebp + 0x1a28]
nop
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x4c0f00
jmp 0x4c0f1c
lea edi, [ebp + 0x1a28]
mov ecx, 0x40
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov esi, dword [esp + 0x30]
mov eax, dword [esi - 0xc]
lea ebx, [ebp + 0x1828]
cmp eax, 0x200
jae 0x4c0f40
mov ecx, esi
mov edx, ebx
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x4c0f34
jmp 0x4c0f4c
mov ecx, 0x7f
mov edi, ebx
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
cmp dword [0x103a97c], 0
je 0x4c0f65
push ebx
push str.pInfo__szDstFileName__s_
push 8
call fcn.0043d500
add esp, 0xc
lea eax, [ebp + 0x60c]
push eax
lea ecx, [esp + 0x24]
call dword [sym.imp.mfc90.dll_Ordinal_310]
mov byte [esp + 0x6c], 0xa
mov eax, dword [esp + 0x3c]
cmp eax, 8
je 0x4c0f90
cmp eax, 0x40
je 0x4c0f90
cmp eax, 0x80
jne 0x4c0f9b
push ebx
lea ecx, [esp + 0x24]
call dword [sym.imp.mfc90.dll_Ordinal_820]
lea ecx, [esp + 0x14]
call dword [sym.imp.mfc90.dll_Ordinal_316]
mov byte [esp + 0x6c], 0xb
mov al, byte [0x10430e4]
test al, 1
je 0x4c103f
cmp byte [0x10567c6], 0
jne 0x4c0fc4
test al, 0x20
je 0x4c103f
mov ebx, dword [esp + 0x3c]
test bl, 0x10
je 0x4c0fed
cmp dword [esp + 0x58], 7
jg 0x4c0fd9
call sub.mfc90.dll_Ordinal_1252
mov eax, dword [esp + 0x54]
add eax, 0x1c
push eax
lea ecx, [esp + 0x18]
call dword [sym.imp.mfc90.dll_Ordinal_817]
jmp 0x4c1043
push 1
push ecx
lea edx, [esp + 0x28]
mov ecx, esp
mov dword [esp + 0x4c], esp
push edx
call dword [sym.imp.mfc90.dll_Ordinal_300]
mov byte [esp + 0x74], 0xc
lea eax, [esp + 0x88]
push eax
mov byte [esp + 0x78], 0xb
call fcn.00447e60
add esp, 0xc
mov byte [esp + 0x6c], 0xd
push eax
lea ecx, [esp + 0x18]
call dword [sym.imp.mfc90.dll_Ordinal_817]
mov byte [esp + 0x6c], 0xb
lea ecx, [esp + 0x80]
call dword [sym.imp.mfc90.dll_Ordinal_601]
jmp 0x4c1043
mov ebx, dword [esp + 0x3c]
cmp dword [0x103a97c], 0
je 0x4c106c
mov ecx, dword [0x10430e4]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x20]
push ecx
push edx
push eax
push str.szHashOK__s_szHash_My__s_0x08x
push 8
call fcn.0043d500
add esp, 0x14
lea ecx, [esp + 0x14]
push ecx
lea ecx, [esp + 0x1c]
call dword [sym.imp.mfc90.dll_Ordinal_300]
mov byte [esp + 0x6c], 0xe
lea esi, [ebp + 0x1a28]
push esi
lea ecx, [esp + 0x30]
call dword [sym.imp.mfc90.dll_Ordinal_310]
mov byte [esp + 0x6c], 0xf
mov eax, dword [esp + 0x2c]
lea edx, [esp + 0x18]
push edx
push eax
mov ecx, 0x53f34c
call fcn.0042f350
lea ecx, [esp + 0x3c]
push ecx
test eax, eax
push esi
mov ecx, 0x53f330
setne byte [esp + 0x88]
mov dword [esp + 0x44], 0
call fcn.004b4610
test eax, eax
setne al
test al, al
jne 0x4c10d9
xor edi, edi
jmp 0x4c10dd
mov edi, dword [esp + 0x3c]
push esi
mov ecx, 0x53f330
call fcn.00423500
mov dword [eax], ebx
test bl, 4
jne 0x4c110b
test bl, 2
je 0x4c110b
test edi, 0x200
je 0x4c110b
lea edx, [esp + 0x18]
push edx
lea ecx, [esp + 0x18]
call dword [sym.imp.mfc90.dll_Ordinal_817]
cmp ebx, 2
jne 0x4c111f
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0x1c]
call dword [sym.imp.mfc90.dll_Ordinal_817]
cmp byte [esp + 0x80], 0
jne 0x4c1145
mov edx, dword [esp + 0x2c]
lea ecx, [esp + 0x18]
push ecx
push edx
mov ecx, 0x53f34c
call fcn.0042f720
mov ecx, eax
call dword [sym.imp.mfc90.dll_Ordinal_817]
cmp dword [0x103a97c], 0
je 0x4c1188
cmp dword [esp + 0x58], 0xa
jg 0x4c115a
call sub.mfc90.dll_Ordinal_1252
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x20]
push eax
mov eax, dword [esp + 0x58]
push ecx
mov ecx, dword [eax + 0x28]
push edx
push ecx
push ebx
lea eax, [ebp + 0x204]
push eax
push str.xxxxxxx__s__Flag_0x_08x_key__s_file__s_szHash_My__s_szHash_P__s_
push 8
call fcn.0043d500
add esp, 0x20
mov esi, dword [esp + 0x18]
mov eax, dword [esi - 0xc]
cmp eax, 0x28
jae 0x4c11ac
mov ecx, esi
lea edx, [ebp + 0x1b2c]
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x4c11a0
jmp 0x4c11bc
lea edi, [ebp + 0x1b2c]
mov ecx, 9
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov esi, dword [esp + 0x14]
cmp dword [esi - 0xc], 0x28
lea ebx, [ebp + 0x1b54]
jae 0x4c11dc
mov ecx, esi
mov edx, ebx
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x4c11d0
jmp 0x4c11e8
mov ecx, 9
mov edi, ebx
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov eax, dword [0x103a97c]
cmp eax, 0x48
je 0x4c11f7
cmp eax, 0x50
jne 0x4c120e
push ebx
lea eax, [ebp + 0x1b2c]
push eax
push str.ProcessEDRL_pInfo__s___s_
push 8
call fcn.0043d500
add esp, 0x10
push str.0000
lea ecx, [esp + 0x20]
call dword [sym.imp.mfc90.dll_Ordinal_1603]
test eax, eax
je 0x4c1231
push 0
lea ecx, [esp + 0x20]
call dword [sym.imp.mfc90.dll_Ordinal_899]
cmp al, 0x32
je 0x4c1273
lea edx, [esp + 0x44]
push edx
call fcn.00410ab0
push str._Y__m__d__H:_M:_S
lea eax, [esp + 0x84]
push eax
lea ecx, [esp + 0x4c]
call fcn.00409400
mov byte [esp + 0x6c], 0x10
push eax
lea ecx, [esp + 0x20]
call dword [sym.imp.mfc90.dll_Ordinal_817]
mov byte [esp + 0x6c], 0xf
lea ecx, [esp + 0x80]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov ecx, dword [esp + 0x1c]
mov edx, ebp
lea esp, [esp]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
test al, al
jne 0x4c1280
mov edx, 0x10d7ce0
mov ecx, 0x1b80
mov eax, ebp
sub edx, ebp
jmp 0x4c12a0
mov esi, dword [eax + edx]
cmp esi, dword [eax]
jne 0x4c138b
sub ecx, 4
add eax, 4
cmp ecx, 4
jae 0x4c12a0
push ebp
call sub.mfc90.dll_Ordinal_800
add esp, 4
mov byte [esp + 0x6c], 0xe
lea ecx, [esp + 0x2c]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov byte [esp + 0x6c], 0xb
lea ecx, [esp + 0x18]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov byte [esp + 0x6c], 0xa
lea ecx, [esp + 0x14]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov byte [esp + 0x6c], 9
lea ecx, [esp + 0x20]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov byte [esp + 0x6c], 8
lea ecx, [esp + 0x30]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov byte [esp + 0x6c], 7
lea ecx, [esp + 0x34]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov byte [esp + 0x6c], 6
lea ecx, [esp + 0x24]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov byte [esp + 0x6c], 5
lea ecx, [esp + 0x38]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov byte [esp + 0x6c], 4
lea ecx, [esp + 0x28]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov byte [esp + 0x6c], 1
lea ecx, [esp + 0x1c]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov byte [esp + 0x6c], 0
lea ecx, [esp + 0x50]
call sub.mfc90.dll_Ordinal_781
mov dword [esp + 0x6c], 0xffffffff
lea ecx, [esp + 0x7c]
call dword [sym.imp.mfc90.dll_Ordinal_601]
mov ecx, dword [esp + 0x64]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x5c
ret 0x10
push 0x1b80
push ebp
push 0x10d7ce0
call sub.MSVCR90.dll_memcpy
add esp, 0xc
push 0x1070cd0
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
push 0x1b80
call sub.mfc90.dll_Ordinal_798
push 0x1b80
mov esi, eax
push ebp
push esi
call sub.MSVCR90.dll_memcpy
add esp, 0x10
push esi
mov ecx, 0x10dd36c
call sub.mfc90.dll_Ordinal_1039
push 0x1070cd0
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [esp + 0x40]
cmp dword [ecx + 0x32454], 0
push ebp
je 0x4c12b7
mov ecx, 0x10dd284
call sub.mfc90.dll_Ordinal_1039
mov eax, dword [0x103a97c]
cmp eax, 0x48
je 0x4c1409
cmp eax, 0x50
jne 0x4c12bf
mov edx, dword [esp + 0x7c]
push edx
push str.ProcessEDRL_OK_2__s_
push 8
call fcn.0043d500
add esp, 0xc
jmp 0x4c12bf