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

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0xc
push 0
push 0
dec ecx
jne 0x4794b8
push ecx
push ebx
push esi
push edi
mov ebx, eax
xor eax, eax
push ebp
push 0x479b0c
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebx + 0x6c]
call fcn.00478338
cmp byte [ebx + 0x60], 0
jne 0x479501
mov eax, dword [ebx + 0x6c]
call fcn.00415630
test eax, eax
jne 0x4794f8
mov dl, 2
mov eax, ebx
call fcn.0047a698
jmp 0x479501
mov dl, 1
mov eax, ebx
call fcn.0047a698
mov eax, dword [ebx + 0x6c]
call fcn.00415630
mov esi, eax
dec esi
test esi, esi
jl 0x47960c
inc esi
xor edi, edi
mov edx, edi
mov eax, dword [ebx + 0x6c]
call fcn.00478430
mov edx, dword [eax + 0x18]
lea eax, [ebp - 0xc]
call fcn.004041c0
cmp dword [ebp - 0xc], 0
je 0x479604
cmp byte [ebx + 0x60], 1
jne 0x4795cb
mov edx, 0x479b24
mov eax, dword [ebp - 0xc]
call fcn.0045295c
test al, al
jne 0x479604
mov edx, 0x479b34
mov eax, dword [ebp - 0xc]
call fcn.0045295c
test al, al
jne 0x479604
mov edx, 0x479b44
mov eax, dword [ebp - 0xc]
call fcn.0045295c
test al, al
jne 0x479604
mov edx, 0x479b54
mov eax, dword [ebp - 0xc]
call fcn.0045295c
test al, al
jne 0x479604
mov edx, 0x479b64
mov eax, dword [ebp - 0xc]
call fcn.0045295c
test al, al
jne 0x479604
mov edx, 0x479b80
mov eax, dword [ebp - 0xc]
call fcn.0045295c
test al, al
jne 0x479604
mov edx, edi
mov eax, dword [ebx + 0x6c]
call fcn.00478430
add eax, 0x18
mov edx, 0x479b54
call fcn.0040417c
jmp 0x479604
mov edx, 0x479b94
mov eax, dword [ebp - 0xc]
call fcn.0045295c
test al, al
jne 0x479604
mov edx, 0x479ba0
mov eax, dword [ebp - 0xc]
call fcn.0045295c
test al, al
jne 0x479604
mov edx, edi
mov eax, dword [ebx + 0x6c]
call fcn.00478430
add eax, 0x18
mov edx, 0x479b94
call fcn.0040417c
inc edi
dec esi
jne 0x479517
mov eax, dword [ebx + 0x6c]
call fcn.00415630
test eax, eax
jle 0x479659
cmp dword [ebx + 0x44], 0
je 0x479659
mov edx, 0x479b24
mov eax, dword [ebx + 0x44]
call fcn.0045295c
test al, al
jne 0x479659
mov edx, 0x479b44
mov eax, dword [ebx + 0x44]
call fcn.0045295c
test al, al
jne 0x479659
mov edx, 0x479b34
mov eax, dword [ebx + 0x44]
call fcn.0045295c
test al, al
jne 0x479659
lea eax, [ebx + 0x44]
call fcn.00404128
cmp byte [ebx + 0x60], 1
jne 0x4796d6
lea edx, [ebp - 0x10]
mov eax, dword [0x4882bc]
mov eax, dword [eax]
call fcn.00471e88
mov eax, dword [ebx + 0x40]
call fcn.004043e8
test eax, eax
jne 0x4796c9
mov eax, dword [ebx + 0x6c]
cmp dword [eax + 0x2c], 1
jle 0x4796a7
cmp dword [eax + 0x20], 0
jle 0x479698
lea eax, [ebx + 0x40]
mov edx, 0x479bac
call fcn.0040417c
jmp 0x4796c9
lea eax, [ebx + 0x40]
mov edx, 0x479bc4
call fcn.0040417c
jmp 0x4796c9
cmp dword [eax + 0x20], 0
jle 0x4796bc
lea eax, [ebx + 0x40]
mov edx, 0x479bac
call fcn.0040417c
jmp 0x4796c9
lea eax, [ebx + 0x40]
mov edx, 0x479be4
call fcn.0040417c
mov eax, dword [ebx + 0x6c]
mov eax, dword [eax + 0x24]
mov edx, ebx
mov ecx, dword [eax]
call dword [ecx + 4]
lea eax, [ebp - 4]
push eax
lea ecx, [ebp - 5]
lea edx, [ebp - 6]
mov eax, ebx
call fcn.0047a6fc
mov eax, dword [ebx + 0xc0]
mov edx, dword [eax]
call dword [edx + 0x44]
mov eax, dword [ebx + 0x68]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jle 0x47970c
mov edx, dword [ebx + 0x68]
mov eax, dword [ebx + 0xc0]
mov ecx, dword [eax]
call dword [ecx + 8]
mov esi, dword [ebx + 0xc0]
mov eax, dword [ebp - 4]
push eax
push 1
lea eax, [ebp - 0x14]
push eax
mov cl, byte [ebp - 6]
mov dl, byte [ebp - 5]
mov eax, dword [ebx + 0x64]
call fcn.0046d8a8
mov ecx, dword [ebp - 0x14]
mov edx, 0x479bf8
mov eax, esi
call fcn.0046cae4
mov al, byte [ebp - 6]
push eax
mov eax, dword [ebp - 4]
push eax
lea eax, [ebp - 0x18]
push eax
mov cl, byte [ebp - 5]
mov edx, 0x479c00
mov eax, dword [ebx + 0x90]
call fcn.0046dfc0
mov ecx, dword [ebp - 0x18]
mov edx, 0x479c28
mov eax, esi
call fcn.0046cae4
mov eax, dword [ebp - 4]
push eax
push 0
lea eax, [ebp - 0x1c]
push eax
mov cl, byte [ebp - 6]
mov dl, byte [ebp - 5]
mov eax, dword [ebx + 0x98]
call fcn.0046d8a8
mov ecx, dword [ebp - 0x1c]
mov edx, 0x479c38
mov eax, esi
call fcn.0046cae4
mov eax, dword [ebp - 4]
push eax
push 0
lea eax, [ebp - 0x20]
push eax
mov cl, byte [ebp - 6]
mov dl, byte [ebp - 5]
mov eax, dword [ebx + 0x3c]
call fcn.0046d8a8
mov ecx, dword [ebp - 0x20]
mov edx, 0x479c44
mov eax, esi
call fcn.0046cae4
cmp byte [ebx + 0xc5], 0
jne 0x4797d1
xor ecx, ecx
mov edx, 0x479c50
mov eax, esi
call fcn.0046cae4
jmp 0x4797f8
mov eax, dword [ebp - 4]
push eax
push 0
lea eax, [ebp - 0x24]
push eax
mov cl, byte [ebp - 6]
mov dl, byte [ebp - 5]
mov eax, dword [ebx + 0x30]
call fcn.0046d8a8
mov ecx, dword [ebp - 0x24]
mov edx, 0x479c50
mov eax, esi
call fcn.0046cae4
lea edx, [ebp - 0x28]
mov eax, dword [ebx + 0x78]
call fcn.00415ee0
mov ecx, dword [ebp - 0x28]
mov edx, 0x479c5c
mov eax, esi
call fcn.0046cae4
cmp byte [ebx + 0x60], 1
jne 0x479905
mov eax, ebx
call fcn.00479474
cmp al, 1
jne 0x47983d
mov ecx, 0x479c70
mov edx, 0x479c7c
mov eax, esi
call fcn.0046cae4
jmp 0x479923
mov ecx, dword [ebx + 0x40]
mov edx, 0x479c94
mov eax, esi
call fcn.0046cae4
cmp dword [ebx + 0x38], 0
jbe 0x47989c
lea ecx, [ebp - 0x30]
mov edx, 0x479c94
mov eax, esi
call fcn.0046c8e8
push dword [ebp - 0x30]
push 0x479cac
push 0x479cb8
push 0x479cc4
push 0x479cd0
push dword [ebx + 0x38]
push 0x479ce4
lea eax, [ebp - 0x2c]
mov edx, 7
call fcn.004044a8
mov ecx, dword [ebp - 0x2c]
mov edx, 0x479c94
mov eax, esi
call fcn.0046cae4
mov eax, dword [ebx + 0x6c]
call fcn.00415630
test eax, eax
jle 0x4798e3
lea ecx, [ebp - 0x38]
mov edx, 0x479c94
mov eax, esi
call fcn.0046c8e8
push dword [ebp - 0x38]
push 0x479cf0
push dword [ebp - 0x10]
push 0x479ce4
lea eax, [ebp - 0x34]
mov edx, 4
call fcn.004044a8
mov ecx, dword [ebp - 0x34]
mov edx, 0x479c94
mov eax, esi
call fcn.0046cae4
mov ecx, 0x479c70
mov edx, 0x479c7c
mov eax, esi
call fcn.0046cae4
mov ecx, dword [ebx + 0x44]
mov edx, 0x479d08
mov eax, esi
call fcn.0046cae4
jmp 0x479923
mov ecx, dword [ebx + 0x44]
mov edx, 0x479d08
mov eax, esi
call fcn.0046cae4
mov ecx, dword [ebx + 0x40]
mov edx, 0x479c94
mov eax, esi
call fcn.0046cae4
lea edx, [ebp - 0x3c]
mov eax, dword [ebx + 0xa8]
call fcn.0045f37c
mov ecx, dword [ebp - 0x3c]
mov edx, 0x479d2c
mov eax, esi
call fcn.0046cae4
mov eax, dword [ebp - 4]
push eax
push 0
lea eax, [ebp - 0x40]
push eax
mov cl, byte [ebp - 6]
mov dl, byte [ebp - 5]
mov eax, dword [ebx + 0xa4]
call fcn.0046d8a8
mov ecx, dword [ebp - 0x40]
mov edx, 0x479d3c
mov eax, esi
call fcn.0046cae4
mov al, byte [ebp - 6]
push eax
mov eax, dword [ebp - 4]
push eax
lea eax, [ebp - 0x44]
push eax
mov cl, byte [ebp - 5]
mov edx, 0x479c00
mov eax, dword [ebx + 0x88]
call fcn.0046dfc0
mov ecx, dword [ebp - 0x44]
mov edx, 0x479d50
mov eax, esi
call fcn.0046cae4
mov eax, dword [ebp - 4]
push eax
push 0
lea eax, [ebp - 0x48]
push eax
mov cl, byte [ebp - 6]
mov dl, byte [ebp - 5]
mov eax, dword [ebx + 0x94]
call fcn.0046cc38
mov ecx, dword [ebp - 0x48]
mov edx, 0x479d68
mov eax, esi
call fcn.0046cae4
mov ecx, dword [ebx + 0x9c]
mov edx, 0x479d8c
mov eax, esi
call fcn.0046cae4
mov eax, ebx
call fcn.0047a630
test al, al
je 0x479a06
call fcn.0040a054
add esp, 0xfffffff8
fstp qword [esp]
wait
lea edx, [ebp - 0x4c]
xor eax, eax
call fcn.0045cfe4
mov ecx, dword [ebp - 0x4c]
mov edx, 0x479da0
mov eax, esi
call fcn.0046cae4
jmp 0x479a25
push dword [ebx + 0x54]
push dword [ebx + 0x50]
lea edx, [ebp - 0x50]
xor eax, eax
call fcn.0045cfe4
mov ecx, dword [ebp - 0x50]
mov edx, 0x479da0
mov eax, esi
call fcn.0046cae4
cmp byte [ebx + 0x8c], 2
je 0x479a50
lea edx, [ebp - 0x54]
xor eax, eax
mov al, byte [ebx + 0x8c]
inc eax
call fcn.004085d4
mov ecx, dword [ebp - 0x54]
mov edx, 0x479db0
mov eax, esi
call fcn.0046cae4
jmp 0x479a75
mov edx, 0x479db0
mov eax, esi
call fcn.0046ca60
test eax, eax
jl 0x479a75
mov edx, 0x479db0
mov eax, esi
call fcn.0046ca60
mov edx, eax
mov eax, esi
mov ecx, dword [eax]
call dword [ecx + 0x48]
mov eax, dword [ebx + 0x5c]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jle 0x479a8b
mov edx, dword [ebx + 0x5c]
mov eax, esi
mov ecx, dword [eax]
call dword [ecx + 0x40]
lea edx, [ebp - 0x58]
mov eax, ebx
call fcn.0047a7b8
cmp dword [ebp - 0x58], 0
jne 0x479ad0
lea ecx, [ebp - 0x5c]
mov edx, 0x479dc4
mov eax, esi
call fcn.0046c8e8
cmp dword [ebp - 0x5c], 0
je 0x479ae9
lea ecx, [ebp - 0x60]
mov edx, 0x479dc4
mov eax, esi
call fcn.0046c8e8
mov ecx, dword [ebp - 0x60]
mov edx, 0x479dd8
mov eax, esi
call fcn.0046cae4
jmp 0x479ae9
lea edx, [ebp - 0x64]
mov eax, ebx
call fcn.0047a7b8
mov ecx, dword [ebp - 0x64]
mov edx, 0x479dd8
mov eax, esi
call fcn.0046cae4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x479b13
lea eax, [ebp - 0x64]
mov edx, 0x17
call fcn.0040414c
lea eax, [ebp - 4]
call fcn.00404128
ret