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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x10
push ebx
mov ebx, ecx
push esi
push edi
mov eax, dword [ebx + 0xc4]
test eax, eax
je 0x492617
mov eax, dword [eax]
cmp dword [eax], 0x46
jg 0x492c33
jmp 0x492c27
mov esi, 0xc0
mov ecx, esi
call fcn.00442720
push esi
xor edi, edi
mov dword [ebx + 0xc4], eax
push edi
push eax
mov dword [ebp - 8], edi
call sub.msvcrt.dll_memset
mov ecx, dword [ebx + 0x54]
add esp, 0xc
test ecx, ecx
jne 0x49264a
mov ecx, ebx
call fcn.00491c80
mov ecx, dword [ebx + 0x54]
mov eax, dword [ebx + 0xc4]
xor edx, edx
inc edx
mov dword [eax], ecx
mov eax, dword [ebx + 0xc4]
mov ecx, dword [ebx + 0x60]
and ecx, edx
mov dword [eax + 4], ecx
mov ecx, dword [ebx + 0x60]
mov eax, dword [ebx + 0xc4]
shr ecx, 1
and ecx, edx
mov dword [eax + 8], ecx
mov ecx, dword [ebx + 0x60]
mov eax, dword [ebx + 0xc4]
shr ecx, 2
and ecx, edx
mov dword [eax + 0xc], ecx
mov ecx, dword [ebx + 0x60]
mov eax, dword [ebx + 0xc4]
shr ecx, 3
and ecx, edx
mov dword [eax + 0x10], ecx
mov ecx, dword [ebx + 0x60]
mov eax, dword [ebx + 0xc4]
shr ecx, 4
and ecx, edx
mov dword [eax + 0x14], ecx
mov ecx, dword [ebx + 0x60]
mov eax, dword [ebx + 0xc4]
shr ecx, 5
and ecx, edx
mov dword [eax + 0x18], ecx
mov ecx, dword [ebx + 0x60]
mov eax, dword [ebx + 0xc4]
shr ecx, 7
and ecx, edx
mov dword [eax + 0x1c], ecx
mov ecx, dword [ebx + 0x60]
mov eax, dword [ebx + 0xc4]
shr ecx, 8
and ecx, edx
mov dword [eax + 0x20], ecx
mov ecx, dword [ebx + 0x60]
mov eax, dword [ebx + 0xc4]
shr ecx, 9
and ecx, edx
mov dword [eax + 0x24], ecx
mov ecx, dword [ebx + 0x60]
mov eax, dword [ebx + 0xc4]
shr ecx, 0xa
and ecx, edx
mov dword [eax + 0x28], ecx
mov ecx, dword [ebx + 0x60]
mov eax, dword [ebx + 0xc4]
shr ecx, 0xb
and ecx, edx
mov dword [eax + 0x2c], ecx
mov ecx, dword [ebx + 0x60]
mov eax, dword [ebx + 0xc4]
shr ecx, 0xc
and ecx, edx
mov dword [eax + 0x30], ecx
mov ecx, dword [ebx + 0x60]
mov eax, dword [ebx + 0xc4]
shr ecx, 0xd
and ecx, edx
mov dword [eax + 0x34], ecx
mov ecx, dword [ebx + 0x60]
mov eax, dword [ebx + 0xc4]
shr ecx, 0xe
and ecx, edx
mov dword [eax + 0x38], ecx
mov ecx, dword [ebx + 0x60]
mov eax, dword [ebx + 0xc4]
shr ecx, 0xf
and ecx, edx
mov dword [eax + 0x3c], ecx
movzx ecx, word [ebx + 0x62]
mov eax, dword [ebx + 0xc4]
and ecx, edx
mov dword [eax + 0x40], ecx
mov ecx, dword [ebx + 0x60]
mov eax, dword [ebx + 0xc4]
shr ecx, 0x11
and ecx, edx
mov dword [eax + 0x44], ecx
mov ecx, dword [ebx + 0x60]
mov eax, dword [ebx + 0xc4]
shr ecx, 0x12
and ecx, edx
mov dword [eax + 0x48], ecx
mov ecx, dword [ebx + 0x60]
mov eax, dword [ebx + 0xc4]
shr ecx, 0x13
and ecx, edx
mov dword [eax + 0x4c], ecx
mov ecx, dword [ebx + 0x60]
mov eax, dword [ebx + 0xc4]
shr ecx, 0x14
and ecx, edx
mov dword [eax + 0x50], ecx
mov ecx, dword [ebx + 0x60]
mov eax, dword [ebx + 0xc4]
shr ecx, 0x15
and ecx, edx
mov dword [eax + 0x54], ecx
mov ecx, dword [ebx + 0x60]
mov eax, dword [ebx + 0xc4]
shr ecx, 0x16
and ecx, edx
mov dword [eax + 0x58], ecx
mov ecx, dword [ebx + 0xc4]
mov eax, dword [ebx + 0x64]
mov dword [ecx + 0x5c], eax
mov ecx, dword [ebx + 0xc4]
mov eax, dword [ebx + 0x68]
mov dword [ecx + 0x60], eax
mov eax, dword [ebx + 0xc4]
mov ecx, dword [ebx + 0x6c]
and ecx, edx
mov dword [eax + 0x64], ecx
mov ecx, dword [ebx + 0xc4]
mov eax, dword [ebx + 0x78]
mov dword [ecx + 0x70], eax
cmp dword [ebx + 0x70], edi
je 0x49284a
push 8
pop ecx
call fcn.00442720
mov ecx, eax
mov eax, dword [ebx + 0xc4]
mov dword [eax + 0x68], ecx
mov eax, dword [ebx + 0x70]
mov edi, dword [ebx + 0x70]
mov eax, dword [eax]
mov esi, dword [eax + 0x44]
mov ecx, esi
call dword [0x4d8248]
mov ecx, edi
call esi
push eax
mov eax, dword [edi]
mov esi, dword [eax + 0x14]
mov ecx, esi
call dword [0x4d8248]
mov ecx, edi
call esi
mov ecx, dword [ebx + 0xc4]
mov edx, eax
mov ecx, dword [ecx + 0x68]
call fcn.00491bc9
xor edi, edi
mov eax, dword [ebx + 0x74]
mov dword [ebp - 4], eax
test eax, eax
je 0x49286f
mov eax, dword [eax]
mov esi, dword [eax + 0x44]
mov ecx, esi
call dword [0x4d8248]
mov ecx, dword [ebp - 4]
call esi
mov ecx, dword [ebx + 0xc4]
mov dword [ecx + 0x6c], eax
mov eax, dword [ebx + 0x7c]
mov dword [ebp - 4], eax
test eax, eax
je 0x492894
mov eax, dword [eax]
mov esi, dword [eax + 0x44]
mov ecx, esi
call dword [0x4d8248]
mov ecx, dword [ebp - 4]
call esi
mov ecx, dword [ebx + 0xc4]
mov dword [ecx + 0x74], eax
mov ecx, dword [ebx + 0xc4]
mov ax, word [ebx + 0x80]
mov word [ecx + 0x78], ax
mov eax, dword [ebx + 0x84]
mov dword [ebp - 4], eax
test eax, eax
je 0x4928cd
mov eax, dword [eax]
mov esi, dword [eax + 0x74]
mov ecx, esi
call dword [0x4d8248]
mov ecx, dword [ebp - 4]
call esi
mov ecx, dword [ebx + 0xc4]
mov dword [ecx + 0x7c], eax
mov edx, dword [ebx + 0x90]
test edx, edx
je 0x4928ff
mov eax, dword [ebx + 0xc4]
mov ecx, dword [eax + 0x88]
mov eax, dword [edx]
mov dword [ecx], eax
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
mov eax, dword [edx + 8]
mov dword [ecx + 8], eax
mov eax, dword [edx + 0xc]
mov dword [ecx + 0xc], eax
mov al, byte [edx + 0x10]
mov byte [ecx + 0x10], al
mov edx, dword [ebx + 0x94]
test edx, edx
je 0x492931
mov eax, dword [ebx + 0xc4]
mov ecx, dword [eax + 0x8c]
mov eax, dword [edx]
mov dword [ecx], eax
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
mov eax, dword [edx + 8]
mov dword [ecx + 8], eax
mov eax, dword [edx + 0xc]
mov dword [ecx + 0xc], eax
mov al, byte [edx + 0x10]
mov byte [ecx + 0x10], al
mov ecx, dword [ebx + 0xc4]
mov eax, dword [ebx + 0x98]
mov dword [ecx + 0x90], eax
mov edx, dword [ebx + 0xc4]
mov eax, dword [ebx + 0x9c]
mov dword [edx + 0x94], eax
mov edx, dword [ebx + 0xc4]
mov eax, dword [ebx + 0xa0]
mov dword [edx + 0x98], eax
cmp dword [ebx + 0xa4], edi
je 0x4929c9
push 8
pop ecx
call fcn.00442720
mov ecx, eax
mov eax, dword [ebx + 0xc4]
mov dword [eax + 0x9c], ecx
mov eax, dword [ebx + 0xa4]
mov edi, dword [ebx + 0xa4]
mov eax, dword [eax]
mov esi, dword [eax + 0x44]
mov ecx, esi
call dword [0x4d8248]
mov ecx, edi
call esi
push eax
mov eax, dword [edi]
mov esi, dword [eax + 0x14]
mov ecx, esi
call dword [0x4d8248]
mov ecx, edi
call esi
mov ecx, dword [ebx + 0xc4]
mov edx, eax
mov ecx, dword [ecx + 0x9c]
call fcn.00491bc9
xor edi, edi
mov ecx, dword [ebx + 0xc4]
mov ax, word [ebx + 0xa8]
mov word [ecx + 0xa0], ax
mov ecx, dword [ebx + 0xc4]
mov ax, word [ebx + 0xb4]
mov word [ecx + 0xa2], ax
mov ecx, dword [ebx + 0xc4]
mov ax, word [ebx + 0xb6]
mov word [ecx + 0xa4], ax
mov eax, dword [ebx]
mov esi, dword [eax + 0x13c]
mov ecx, esi
call dword [0x4d8248]
mov ecx, ebx
call esi
mov ecx, dword [ebx + 0xc4]
mov byte [ecx + 0xa6], al
mov eax, dword [ebx]
mov esi, dword [eax + 0x140]
mov ecx, esi
call dword [0x4d8248]
mov ecx, ebx
call esi
mov ecx, dword [ebx + 0xc4]
mov byte [ecx + 0xa7], al
mov eax, dword [ebx]
mov esi, dword [eax + 0x154]
mov ecx, esi
call dword [0x4d8248]
mov ecx, ebx
call esi
mov ecx, dword [ebx + 0xc4]
mov byte [ecx + 0xa8], al
mov eax, dword [ebx]
mov esi, dword [eax + 0x15c]
mov ecx, esi
call dword [0x4d8248]
mov ecx, ebx
call esi
mov ecx, dword [ebx + 0xc4]
mov byte [ecx + 0xa9], al
mov eax, dword [ebx]
mov esi, dword [eax + 0x158]
mov ecx, esi
call dword [0x4d8248]
mov ecx, ebx
call esi
mov ecx, dword [ebx + 0xc4]
mov byte [ecx + 0xaa], al
mov eax, dword [ebx]
mov esi, dword [eax + 0x160]
mov ecx, esi
call dword [0x4d8248]
mov ecx, ebx
call esi
mov ecx, dword [ebx + 0xc4]
push edi
push 0x4d1c20
push 0x4d1300
push edi
push ebx
mov byte [ecx + 0xab], al
call sub.msvcrt.dll___RTDynamicCast
add esp, 0x14
mov dword [ebp - 4], eax
test eax, eax
je 0x492b23
mov eax, dword [eax]
mov esi, dword [eax + 0x38]
mov ecx, esi
call dword [0x4d8248]
mov ecx, dword [ebp - 4]
call esi
mov ecx, dword [ebx + 0xc4]
mov byte [ecx + 0xac], al
mov eax, dword [ebp - 4]
mov eax, dword [eax]
mov esi, dword [eax + 0x1ac]
mov ecx, esi
call dword [0x4d8248]
mov ecx, dword [ebp - 4]
call esi
mov ecx, dword [ebx + 0xc4]
mov byte [ecx + 0xad], al
mov eax, dword [ebx + 0xb8]
mov dword [ebp - 4], eax
test eax, eax
je 0x492b4e
mov eax, dword [eax]
mov esi, dword [eax + 0x44]
mov ecx, esi
call dword [0x4d8248]
mov ecx, dword [ebp - 4]
call esi
mov ecx, dword [ebx + 0xc4]
mov dword [ecx + 0xb0], eax
mov eax, dword [ebx + 0xbc]
mov dword [ebp - 4], eax
test eax, eax
je 0x492b79
mov eax, dword [eax]
mov esi, dword [eax + 0x44]
mov ecx, esi
call dword [0x4d8248]
mov ecx, dword [ebp - 4]
call esi
mov ecx, dword [ebx + 0xc4]
mov dword [ecx + 0xb4], eax
mov esi, dword [ebx + 4]
mov ecx, edi
mov dword [ebp - 0x10], esi
test esi, esi
je 0x492c2c
mov eax, esi
mov eax, dword [eax + 8]
inc ecx
test eax, eax
jne 0x492b8b
test cx, cx
je 0x492c2c
mov eax, esi
mov eax, dword [eax + 8]
inc edi
test eax, eax
jne 0x492b9e
mov eax, dword [ebx + 0xc4]
movsx ecx, di
push 4
pop edx
mov dword [eax + 0xb8], ecx
xor ecx, ecx
mov eax, dword [ebx + 0xc4]
mov eax, dword [eax + 0xb8]
mul edx
seto cl
neg ecx
or ecx, eax
call fcn.00442720
mov ecx, eax
mov dword [ebp - 0xc], esi
mov eax, dword [ebx + 0xc4]
mov dword [eax + 0xbc], ecx
lea eax, [ebp - 4]
push eax
jmp 0x492c1b
mov edi, dword [ebp - 4]
mov eax, dword [edi]
mov esi, dword [eax + 0x44]
mov ecx, esi
call dword [0x4d8248]
mov ecx, edi
call esi
mov ecx, dword [ebx + 0xc4]
mov edx, dword [ebp - 8]
mov ecx, dword [ecx + 0xbc]
mov dword [edx + ecx], eax
add edx, 4
lea ecx, [ebp - 4]
mov dword [ebp - 8], edx
push ecx
lea ecx, [ebp - 0x10]
call fcn.0047140b
test eax, eax
je 0x492beb
xor eax, eax
inc eax
jmp 0x492c2e
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret
push 0x430968
mov edx, 0x28c
mov ecx, 0x4308b8
call fcn.004ca0da
int3