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

Disassembly:
sub esp, 0x148
push ebp
push esi
push edi
mov edi, dword [esp + 0x158]
mov eax, dword [edi + 0x14]
not eax
test al, 1
jne 0x4733bd
mov eax, dword [edi + 0x24]
mov ecx, dword [edi + 0x28]
lea edx, [eax + 4]
cmp edx, ecx
jbe 0x472fd7
sub eax, ecx
mov ecx, edi
add eax, 4
push eax
call fcn.0051382a
mov eax, dword [edi + 0x24]
mov ebp, dword [esp + 0x15c]
push 0xffffffffffffffff
mov ecx, ebp
mov esi, dword [eax]
add eax, 4
push esi
mov dword [esp + 0x18], esi
mov dword [edi + 0x24], eax
call fcn.0051363e
mov ecx, dword [esp + 0x160]
push 0xffffffffffffffff
push esi
call fcn.0051363e
mov edx, dword [0x5b6250]
mov eax, dword [str.ID_COMMENTS]
mov ecx, dword [0x5b624c]
mov dword [esp + 0xbc], edx
mov edx, dword [0x5b623c]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xd8], edx
xor edx, edx
xor eax, eax
mov dword [esp + 0xb8], ecx
mov ecx, dword [str.ID_COMPANY_NAME]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xc0], eax
mov dword [esp + 0xe8], edx
mov dword [esp + 0xc4], eax
mov dword [esp + 0xd4], ecx
mov ecx, dword [0x5b6244]
mov dword [esp + 0xec], edx
mov dword [esp + 0xc8], eax
mov dword [esp + 0xe0], ecx
mov ecx, dword [0x5b6228]
mov dword [esp + 0xf0], edx
mov edx, dword [0x5b622c]
mov dword [esp + 0xcc], eax
mov dword [esp + 0xd0], eax
mov eax, dword [0x5b6240]
mov dword [esp + 0xf8], ecx
mov cl, byte [0x5b6234]
mov dword [esp + 0xfc], edx
xor edx, edx
mov dword [esp + 0xdc], eax
mov eax, dword [str.ID_CREATION_TIME]
mov byte [esp + 0x104], cl
mov ecx, dword [0x5b6218]
mov dword [esp + 0x105], edx
mov dword [esp + 0xf4], eax
mov eax, dword [0x5b6230]
mov dword [esp + 0x109], edx
mov dword [esp + 0x118], ecx
mov dword [esp + 0x10d], edx
xor ecx, ecx
mov dword [esp + 0x100], eax
mov eax, dword [str.ID_PRODUCT_NAME]
mov word [esp + 0x111], dx
mov dword [esp + 0x124], ecx
mov byte [esp + 0x113], dl
mov edx, dword [0x5b621c]
mov dword [esp + 0x128], ecx
mov dword [esp + 0x114], eax
mov eax, dword [0x5b6220]
mov dword [esp + 0x12c], ecx
mov dword [esp + 0x11c], edx
mov edx, dword [str.ID_PRODUCT_VERSION]
mov dword [esp + 0x120], eax
mov eax, dword [0x5b6204]
mov dword [esp + 0x130], ecx
mov ecx, dword [0x5b6208]
mov dword [esp + 0x134], edx
mov edx, dword [0x5b620c]
mov dword [esp + 0x138], eax
mov ax, word [0x5b6210]
mov dword [esp + 0x13c], ecx
mov cl, byte [0x5b6212]
mov dword [esp + 0x140], edx
mov word [esp + 0x144], ax
mov byte [esp + 0x146], cl
xor edx, edx
mov eax, dword [0x5bad0c]
mov dword [esp + 0x147], edx
mov dword [esp + 0x14b], edx
mov dword [esp + 0x14], eax
mov dword [esp + 0x14f], edx
xor eax, eax
mov byte [esp + 0x153], dl
mov dl, byte [0x5bad14]
mov dword [esp + 0x1d], eax
mov ecx, dword [0x5bad10]
mov dword [esp + 0x21], eax
mov byte [esp + 0x1c], dl
mov edx, dword [0x5bad00]
mov dword [esp + 0x25], eax
mov dword [esp + 0x29], eax
mov dword [esp + 0x38], edx
xor edx, edx
mov dword [esp + 0x2d], eax
mov dword [esp + 0x41], edx
mov word [esp + 0x31], ax
mov dword [esp + 0x18], ecx
mov ecx, dword [str.Company_Name]
mov dword [esp + 0x45], edx
mov byte [esp + 0x33], al
mov eax, dword [0x5bad04]
mov dword [esp + 0x49], edx
mov dword [esp + 0x34], ecx
mov cl, byte [0x5bad08]
mov dword [esp + 0x3c], eax
mov eax, dword [str.Creation_Time]
mov dword [esp + 0x4d], edx
mov byte [esp + 0x40], cl
mov ecx, dword [0x5bacf0]
mov word [esp + 0x51], dx
mov dword [esp + 0x54], eax
mov ax, word [0x5bacf8]
mov byte [esp + 0x53], dl
mov edx, dword [0x5bacf4]
mov dword [esp + 0x58], ecx
mov word [esp + 0x60], ax
mov eax, dword [0x5bace0]
xor ecx, ecx
mov dword [esp + 0x5c], edx
mov edx, dword [str.Product_Name]
mov dword [esp + 0x62], ecx
mov dword [esp + 0x78], eax
mov dword [esp + 0x66], ecx
mov dword [esp + 0x74], edx
mov dl, byte [0x5bace8]
xor eax, eax
mov dword [esp + 0x6a], ecx
mov dword [esp + 0x81], eax
mov byte [esp + 0x80], dl
mov edx, dword [0x5bacd0]
mov dword [esp + 0x6e], ecx
mov dword [esp + 0x85], eax
mov word [esp + 0x72], cx
mov ecx, dword [0x5bace4]
mov dword [esp + 0x89], eax
mov dword [esp + 0x98], edx
xor edx, edx
mov dword [esp + 0x8d], eax
mov dword [esp + 0x7c], ecx
mov ecx, dword [str.Product_Version]
mov dword [esp + 0xa4], edx
mov word [esp + 0x91], ax
mov dword [esp + 0xa8], edx
mov byte [esp + 0x93], al
mov eax, dword [0x5bacd4]
mov dword [esp + 0x94], ecx
mov ecx, dword [0x5bacd8]
mov dword [esp + 0xac], edx
test esi, esi
mov dword [esp + 0x9c], eax
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xb0], edx
mov dword [esp + 0xc], edx
jle 0x4733bd
push ebx
jmp 0x47333e
mov edi, dword [esp + 0x15c]
mov eax, dword [esp + 0x10]
mov ebx, dword [ebp + 4]
lea esi, [eax*4]
mov ecx, esi
add ecx, ebx
push ecx
push edi
call fcn.00513830
mov eax, dword [esp + 0x164]
mov edx, esi
add edx, dword [eax + 4]
push edx
push edi
call fcn.00513830
xor edi, edi
lea ebx, [esp + 0x18]
mov ecx, dword [ebp + 4]
push ebx
mov eax, dword [esi + ecx]
push eax
call dword [0x571278]
add esp, 8
test eax, eax
je 0x473390
inc edi
add ebx, 0x20
cmp edi, 5
jl 0x473370
jmp 0x4733a7
mov eax, dword [ebp + 4]
mov ecx, esi
shl edi, 5
add ecx, eax
lea edx, [esp + edi + 0xb8]
push edx
call fcn.005135fc
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
inc eax
cmp eax, ecx
mov dword [esp + 0x10], eax
jl 0x473337
pop ebx
pop edi
pop esi
pop ebp
add esp, 0x148
ret 0xc