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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x8c
test byte [0x5a4e00], 2
mov eax, dword [0x5a1100]
push ebx
mov ebx, dword [0x5a30a0]
push esi
push edi
mov dword [esp + 0x30], eax
mov dword [0x5a1100], 0x4021c8
jne 0x4bb928
mov ecx, ebx
call fcn.00461762
cmp dword [0x5a4abc], 0
jne 0x4bb939
cmp dword [0x5a4eec], 0
jne 0x4bb939
xor al, al
cmp dword [0x5a303c], 6
mov byte [esp + 0x14], al
jne 0x463302
test al, al
jne 0x4632fd
mov eax, dword [0x5a306c]
mov byte [esp + 0x14], 0
cmp eax, dword [0x5a4b18]
jbe 0x463302
mov byte [esp + 0x14], 1
push dword [esp + 0x14]
mov ecx, ebx
mov dword [ebx], 3
call fcn.00456a2e
lea ecx, [esp + 0x38]
call fcn.004618d0
mov eax, dword [ebx]
lea esi, [ebx + 8]
mov ecx, dword [esi]
mov edx, dword [0x5a4ee0]
mov dword [esp + 0x38], eax
push dword [ecx + 0x89c]
call fcn.00461942
mov ecx, dword [esi]
mov edi, 0xa64e
cmp word [ecx + 0x40], di
je 0x4bb940
mov edx, 0x5a4aa8
call fcn.004636aa
mov eax, dword [esi]
and dword [esp + 0x20], 0
cmp byte [esp + 0x14], 0
mov dword [eax + 0x184], 3
je 0x4bbb20
cmp dword [0x5a303c], 5
je 0x4bb958
mov ecx, dword [esi]
mov edx, 0x5a3058
call fcn.004636aa
mov edi, dword [esi]
mov eax, dword [edi + 0x14c]
shr eax, 6
not al
and eax, 0xffffff01
cmp byte [0x5a3041], 0
je 0x4bb9b2
movsx ecx, byte [0x5a1104]
mov edx, dword [ebx + 0xc]
push ecx
push eax
push ecx
push ecx
mov ecx, edi
call fcn.004619a2
mov ecx, dword [esi]
xor edi, edi
push 1
push edi
push ecx
mov ecx, dword [ecx + 0x89c]
call fcn.00456418
mov ecx, dword [esi]
push 1
push edi
push ecx
mov ecx, dword [ecx + 0x8a0]
call fcn.00456418
mov eax, dword [0x5a2efc]
test eax, eax
jne 0x4bb9b9
cmp byte [0x5a4edd], al
jne 0x4bb9d9
mov ecx, dword [ebx + 0xc]
mov eax, 0xa64e
cmp word [ecx + 0x40], ax
je 0x4bb9ed
mov edi, 0x3a64
cmp word [ecx + 0x40], di
je 0x4bba14
cmp dword [0x5a3050], 0
je 0x46348c
mov ecx, dword [ebx + 0xc]
cmp dword [ecx + 0x948], 0
je 0x4bba3f
mov edx, dword [ecx + 0x948]
test byte [edx], 1
je 0x4bba4c
mov eax, dword [ecx + 0x948]
mov ecx, dword [ecx + 0x89c]
mov eax, dword [eax + 4]
add eax, dword [ecx]
push eax
mov dword [esp + 0x14], eax
mov edi, eax
call fcn.0047bdf6
test al, al
jne 0x4bba76
mov ecx, dword [esi]
push edi
mov ecx, dword [ecx + 0x89c]
call fcn.00455a31
test eax, eax
jne 0x4bba8d
cmp dword [esp + 0x10], edi
jne 0x4bbac3
mov edi, 0x3a64
cmp dword [0x5a303c], 5
je 0x4bbad8
cmp dword [0x5a3054], 0
je 0x4bb9e1
mov ecx, ebx
call fcn.0046252f
mov ecx, ebx
call fcn.00462681
push dword [esp + 0x14]
mov ecx, ebx
call fcn.004626c4
cmp dword [0x5a3074], 0
jne 0x4634d2
mov dword [0x5a3074], 1
call dword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__tzset]
cmp byte [0x5a304c], 0
je 0x4bbbc5
or eax, 0xffffffff
mov edx, eax
mov ecx, dword [esi]
mov dword [ebx + 0x68], eax
lea eax, [esp + 0x44]
push eax
mov dword [ebx + 0x6c], edx
lea eax, [esp + 0x44]
mov ecx, dword [ecx + 0x89c]
lea edx, [esp + 0x40]
push eax
call fcn.0046528e
mov edi, dword [esi]
mov ecx, eax
mov eax, 0xa64e
mov dword [esp + 0x48], ecx
cmp word [edi + 0x40], ax
je 0x4bbbd3
sub ecx, dword [esp + 0x20]
push ecx
call fcn.00462803
mov dword [ebx + 0x60], eax
test eax, eax
je 0x463554
mov eax, dword [ebx + 0xc]
mov ecx, dword [eax + 0x154]
cmp ecx, 2
jge 0x463695
mov ecx, 0xebc
cmp word [eax + 0x40], cx
je 0x4bbc46
mov eax, dword [ebx + 0xc]
mov eax, dword [eax + 0xb9c]
test eax, eax
jne 0x4bbc55
mov ecx, dword [esi]
mov ecx, dword [ecx + 0x89c]
call fcn.0045647d
mov ecx, dword [esi]
mov eax, 0xa64e
cmp word [ecx + 0x40], ax
je 0x4bbec0
lea eax, [esp + 0x38]
mov ecx, ebx
push eax
call fcn.00462840
mov eax, dword [ebx]
lea eax, [eax*4 + 4]
mov dword [esp + 0x10], eax
push eax
call dword [sym.imp.tbbmalloc.dll_scalable_malloc]
mov edi, eax
pop ecx
test edi, edi
je 0x4bbed0
cmp dword [0x5a2e48], 3
jl 0x4bbeeb
mov edx, dword [esp + 0x10]
mov ecx, edi
call fcn.0045be4b
mov eax, dword [ebx + 0x7c]
mov dword [0x5a3070], edi
and eax, 0xc
jne 0x4bbf94
mov edx, dword [0x5a3d8c]
test edx, edx
jne 0x4bbeff
test byte [0x5a4e00], 2
jne 0x4bbf52
push ecx
call fcn.00462977
push dword [0x5a3048]
push dword [0x5a3054]
push 0x2329
call fcn.004315ea
add esp, 0xc
call fcn.004316ca
push dword [esp + 0x14]
lea eax, [esp + 0x3c]
mov ecx, ebx
push dword [esp + 0x24]
push eax
call fcn.004629b1
test byte [ebx + 0x7c], 8
jne 0x463648
mov ecx, dword [ebx + 0x78]
mov dl, 1
call fcn.0044a8b3
cmp dword [0x5a3d8c], 0
jne 0x4bc060
cmp dword [0x5a303c], 5
je 0x4bc085
mov eax, dword [0x5a3070]
test eax, eax
je 0x463666
push eax
call dword [sym.imp.tbbmalloc.dll_scalable_free]
pop ecx
and dword [0x5a3070], 0
xor dl, dl
mov ecx, esi
call fcn.00432868
test byte [0x5a4e00], 2
jne 0x4bc093
mov eax, dword [esp + 0x30]
pop edi
pop esi
mov dword [0x5a1100], eax
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
test dword [eax + 0xaf0], 0x9000
je 0x463545
jmp 0x4bbc33
push ecx
push ecx
mov ecx, 0x41ae10
call fcn.004d9cf3
jmp 0x4632b7
mov al, 1
jmp 0x4632da
push dword [ecx + 0x8a0]
mov edx, dword [0x5a5104]
call fcn.00461942
mov ecx, dword [esi]
jmp 0x463349
mov edi, 0x5a3064
mov ecx, 0x5a4ab4
mov edx, edi
call fcn.004ed4d2
mov edx, edi
mov edi, 0x5a4ee4
mov ecx, edi
call fcn.004ed4d2
mov ecx, 0x5a4ab4
call fcn.0047802e
mov ecx, edi
call fcn.0047802e
mov ecx, dword [ebx + 0xc]
call fcn.004617f2
mov ecx, dword [ebx + 0xc]
mov edx, 0xa64e
cmp word [ecx + 0x40], dx
je 0x4bb9a8
mov ecx, ebx
call fcn.004d759e
mov ecx, dword [ebx + 0xc]
call fcn.0045848f
jmp 0x463388
xor ecx, ecx
jmp 0x4633ae
push eax
push 0x460
push dword [0x5a3054]
jmp 0x4bb9d4
mov eax, 0x41abfc
push eax
push 0x51e
push 0
call fcn.0047dc0b
push 0x480
push edi
jmp 0x4bb9e8
push 0x487
push 0
call fcn.0047dc0b
mov ecx, ebx
call fcn.004d759e
mov ecx, dword [ebx + 0xc]
push edi
push edi
mov byte [0x5a4edc], 1
call fcn.004336c9
mov ecx, dword [ebx + 0xc]
mov byte [0x5a4edc], 0
jmp 0x46340b
test byte [ebx + 0x7c], 8
jne 0x4bba2f
test dword [ecx + 0xaf0], 0x80000
je 0x4bba2f
push 0
push 0
call fcn.004336c9
mov ecx, ebx
call fcn.004d7e92
mov dword [esp + 0x20], eax
jmp 0x46341a
call fcn.00457a13
mov ecx, dword [ebx + 0xc]
jmp 0x463433
mov eax, dword [ecx + 0x14c]
shr eax, 6
not al
and al, 1
movzx eax, al
push eax
mov eax, dword [ecx + 0x89c]
mov eax, dword [eax]
add eax, dword [edx + 4]
push eax
call fcn.0051cfc3
mov ecx, dword [ebx + 0xc]
jmp 0x463442
mov eax, dword [ebx + 0xc]
mov ecx, dword [esp + 0x10]
movzx edx, word [eax + 0x40]
call fcn.00506db1
mov edi, eax
jmp 0x463467
xor dl, dl
mov ecx, edi
call fcn.004e30cf
push eax
push 0x1078
push 0
mov dword [esp + 0x18], eax
call fcn.004fd88b
mov eax, dword [esp + 0x18]
add esp, 0xc
test eax, eax
je 0x46347d
push eax
call dword [sym.imp.tbbmalloc.dll_scalable_free]
pop ecx
jmp 0x46347d
test edi, edi
je 0x463487
push edi
call dword [sym.imp.tbbmalloc.dll_scalable_free]
pop ecx
jmp 0x463487
mov ecx, dword [ebx + 0xc]
movzx eax, word [ecx + 0x40]
cmp ax, di
je 0x463499
mov edx, 0xa64e
cmp ax, dx
je 0x463499
cmp dword [0x5a3cc8], 0
jne 0x463499
cmp dword [ecx + 0xb9c], 0
jne 0x463499
mov ecx, dword [ecx + 0x89c]
call fcn.00466218
jmp 0x463499
mov eax, dword [ebx + 0xc]
mov ecx, 0x3a64
cmp word [eax + 0x40], cx
jne 0x4bbb3c
mov ecx, ebx
call fcn.004d7e92
mov dword [esp + 0x20], eax
mov eax, dword [ebx + 0xc]
mov dword [eax + 0x154], 1
mov eax, dword [ebx + 0xc]
cmp word [eax + 0x40], di
jne 0x463499
mov eax, dword [esi]
mov ecx, dword [eax + 0x89c]
add ecx, 0xc
call fcn.00477fd4
mov eax, dword [esi]
mov ecx, dword [eax + 0x89c]
lea ecx, [ecx + 0xc]
call fcn.004654b8
mov edx, dword [esi]
test eax, eax
je 0x4bbba9
lea edi, [eax + 0x10]
test edi, edi
je 0x4bbba9
push edi
mov ecx, edx
call fcn.005055a0
test eax, eax
je 0x4bbb63
cmp edi, dword [eax]
jne 0x4bbb63
mov eax, dword [esi]
xor dl, dl
mov ecx, edi
push dword [eax + 0x89c]
call fcn.0044ea60
or dword [edi], 0x100
jmp 0x4bbb63
mov edx, dword [edx + 0x89c]
mov ecx, dword [edx + 0x48]
push ecx
mov eax, dword [ecx + 0xc]
mov dword [edx + 0x48], eax
call dword [sym.imp.tbbmalloc.dll_scalable_free]
pop ecx
jmp 0x463499
push 0
call dword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
pop ecx
jmp 0x4634ea
mov eax, dword [esp + 0x3c]
lea edx, [esp + 0x64]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x58], eax
lea eax, [esp + 0x6c]
push eax
lea eax, [esp + 0x6c]
mov dword [esp + 0x60], ecx
mov ecx, dword [edi + 0x8a0]
push eax
call fcn.0046528e
mov ecx, dword [esp + 0x48]
add ecx, eax
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x64]
add dword [esp + 0x3c], eax
mov eax, dword [esp + 0x68]
add dword [esp + 0x40], eax
mov eax, dword [esp + 0x6c]
add dword [esp + 0x44], eax
mov dword [esp + 0x48], ecx
jmp 0x463522
mov eax, 0x41abf0
cmp ecx, 3
je 0x4bb9cc
jmp 0x4bb9c7
push 0x41ac08
push 0x4e4
jmp 0x4bb9d2
mov eax, dword [eax + 0x58]
xor edi, edi
cmp dword [eax + 8], edi
je 0x463565
push 0xc
pop ecx
call fcn.0043d6d0
mov dword [esp + 0x24], eax
test eax, eax
je 0x4bbc7d
mov dword [eax], edi
mov dword [eax + 8], edi
mov dword [eax + 4], edi
jmp 0x4bbc7f
mov eax, edi
push 0xc
pop ecx
mov dword [ebx + 0x80], eax
call fcn.0043d6d0
mov dword [esp + 0x24], eax
test eax, eax
je 0x4bbc9f
mov dword [eax], edi
mov dword [eax + 8], edi
mov dword [eax + 4], edi
jmp 0x4bbca1
mov eax, edi
push 0x18
pop ecx
mov dword [ebx + 0x84], eax
call fcn.0043d6d0
mov dword [esp + 0x24], eax
test eax, eax
je 0x4bbccd
xor ecx, ecx
mov dword [eax], 0x4019a0
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], ecx
mov dword [eax + 0x14], ecx
jmp 0x4bbccf
mov eax, edi
mov dword [ebx + 0x88], eax
mov eax, dword [esi]
mov edi, dword [eax + 0x89c]
mov ecx, edi
mov dword [esp + 0x34], edi
call fcn.0046501b
mov ecx, dword [edi + 0x30]
mov edx, eax
xor edi, edi
mov dword [esp + 0x2c], edx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0xc], edi
test ecx, ecx
je 0x463565
mov eax, ecx
mov ecx, dword [edx + edi*4]
mov dword [esp + 0x28], ecx
test dword [ecx], 0x80000
jne 0x4bbeab
call fcn.00465670
test al, al
je 0x4bbea7
mov eax, dword [esp + 0x34]
mov esi, dword [ecx + 4]
add esi, dword [eax]
mov eax, dword [ebx + 0xc]
push esi
mov dword [esp + 0x28], esi
mov eax, dword [eax + 0xb9c]
mov ecx, dword [eax + 0x54]
call fcn.00455a31
mov dword [esp + 0x10], eax
test eax, eax
jne 0x4bbe14
mov eax, dword [ebx + 0xc]
push esi
mov ecx, dword [eax + 0x89c]
call fcn.00455a31
test eax, eax
je 0x4bbe0e
mov ecx, dword [eax + 0x14]
test ecx, ecx
je 0x4bbe0e
mov eax, dword [ebx + 0xc]
mov edi, dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strlen]
mov eax, dword [eax + 0xb9c]
mov eax, dword [eax]
add eax, dword [ecx + 8]
push eax
call edi
mov esi, eax
mov dword [esp], 0x41abec
call edi
add esi, eax
mov dword [esp], 0x41abe4
call edi
pop ecx
lea edi, [esi + eax]
mov esi, dword [esp + 0x24]
push esi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strlen]
pop ecx
xor ecx, ecx
inc ecx
sub ecx, edi
add eax, ecx
mov dword [esp + 0x18], eax
push eax
call dword [sym.imp.tbbmalloc.dll_scalable_malloc]
mov edi, eax
pop ecx
test edi, edi
jne 0x4bbdda
call fcn.004575aa
test al, al
mov eax, dword [esp + 0x18]
jne 0x4bbdba
call fcn.004fd4dc
mov ecx, dword [esp + 0x18]
lea eax, [ecx - 1]
push eax
push esi
push ecx
push edi
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strncpy_s]
mov eax, dword [ebx + 0xc]
add esp, 0x10
mov dword [esp + 0x18], edi
mov eax, dword [eax + 0xb9c]
push edi
mov ecx, dword [eax + 0x54]
call fcn.00455a31
mov edi, dword [esp + 0xc]
mov dword [esp + 0x10], eax
jmp 0x4bbe18
mov eax, dword [esp + 0x10]
jmp 0x4bbe18
mov dword [esp + 0x18], esi
test eax, eax
je 0x4bbea3
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0x7c]
push eax
mov eax, dword [ebx + 0xc]
mov ecx, dword [eax + 0xb9c]
mov ecx, dword [ecx + 0x58]
call fcn.004d73f4
mov eax, dword [esp + 0x7c]
lea ecx, [esp + 0x90]
push ecx
mov ecx, dword [eax + 4]
call fcn.004d91d8
mov ecx, dword [ebx + 0x80]
mov eax, dword [eax + 4]
mov esi, dword [eax]
lea eax, [esp + 0x28]
push eax
call fcn.004d9104
test eax, eax
je 0x4bbe7c
mov ecx, dword [ebx + 0x84]
lea eax, [esp + 0x18]
push eax
call fcn.004d9132
test eax, eax
jne 0x4bbe81
call fcn.004fd4dc
mov ecx, dword [ebx + 0x88]
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x88]
push eax
call fcn.004d739c
mov eax, dword [esp + 0x88]
mov dword [eax + 4], esi
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x1c]
inc edi
mov dword [esp + 0xc], edi
cmp edi, eax
jb 0x4bbd05
lea esi, [ebx + 8]
jmp 0x463565
mov ecx, dword [ecx + 0x8a0]
call fcn.0045647d
jmp 0x463583
call fcn.004575aa
test al, al
mov eax, dword [esp + 0x10]
jne 0x46359c
call fcn.004fd4dc
jmp 0x4635c6
push dword [esp + 0x10]
push 0
push edi
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
jmp 0x4635c6
test byte [0x5a4e00], 2
je 0x4bbf3b
lea ecx, [esp + 0xc]
call fcn.004d89c9
push dword [0x5a3fcc]
mov ecx, 0x41ae30
push dword [0x5a3fc8]
mov edx, dword [eax]
call fcn.004d9d0d
cmp dword [esp + 0xc], 0
je 0x4bbf3b
push dword [esp + 0xc]
call dword [sym.imp.tbbmalloc.dll_scalable_free]
pop ecx
push ecx
call fcn.00462977
push dword [0x5a3048]
push dword [0x5a3d8c]
jmp 0x463605
mov edx, dword [0x5a3054]
lea ecx, [esp + 0xc]
call fcn.004d89c9
push dword [0x5a3fcc]
mov ecx, 0x41ae30
push dword [0x5a3fc8]
mov edx, dword [eax]
call fcn.004d9d0d
cmp dword [esp + 0xc], 0
je 0x4635f3
push dword [esp + 0xc]
call dword [sym.imp.tbbmalloc.dll_scalable_free]
pop ecx
jmp 0x4635f3
cmp eax, 8
jne 0x4bbfaf
push ecx
call fcn.00462977
push dword [0x5a3048]
push 0x2358
jmp 0x4bc054
cmp eax, 4
jne 0x463612
mov eax, dword [0x5a3d8c]
test eax, eax
je 0x4bc007
test byte [0x5a4e00], 2
je 0x4bc004
mov edx, eax
lea ecx, [esp + 0xc]
call fcn.004d89c9
push dword [0x5a3fcc]
mov ecx, 0x41ae30
push dword [0x5a3fc8]
mov edx, dword [eax]
call fcn.004d9d0d
cmp dword [esp + 0xc], 0
je 0x4bbfff
push dword [esp + 0xc]
call dword [sym.imp.tbbmalloc.dll_scalable_free]
pop ecx
mov eax, dword [0x5a3d8c]
push eax
jmp 0x4bc04f
test byte [0x5a4e00], 2
je 0x4bc049
mov edx, dword [0x5a3054]
lea ecx, [esp + 0xc]
call fcn.004d89c9
push dword [0x5a3fcc]
mov ecx, 0x41ae30
push dword [0x5a3fc8]
mov edx, dword [eax]
call fcn.004d9d0d
cmp dword [esp + 0xc], 0
je 0x4bc049
push dword [esp + 0xc]
call dword [sym.imp.tbbmalloc.dll_scalable_free]
pop ecx
push dword [0x5a3054]
push 0x235b
call fcn.004315ea
pop ecx
pop ecx
jmp 0x463612
push ecx
push ecx
call fcn.004d3ca6
test al, al
jne 0x463648
mov edx, dword [0x5a3d8c]
mov ecx, dword [0x5a3054]
call fcn.004d3dd3
jmp 0x463648
xor dl, dl
mov cl, 1
call fcn.00457243
jmp 0x463676
push ecx
push ecx
mov ecx, 0x41ae00
call fcn.004d9cf3
jmp 0x463683