Function at 0x59296c
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x94e8c2
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x8d0
push ebx
push esi
mov esi, ecx
xor ebx, ebx
push edi
push ebx
lea ecx, [esp + 0x20]
call fcn.00735050
lea ecx, [esp + 0x18]
mov dword [esp + 0x8e4], ebx
call fcn.00911f0c
lea ecx, [esp + 0xc]
mov byte [esp + 0x8e4], 1
call fcn.00911f0c
mov eax, dword [0xa8fd20]
lea ecx, [esp + 0xc]
push eax
push 0xa8fd60
push 0xa7d38c
push ecx
mov byte [esp + 0x8f4], 2
call fcn.00911f42
mov al, byte [esp + 0x8fc]
add esp, 0x10
cmp al, 0x57
je 0x592c0b
cmp al, 0x77
je 0x592c0b
cmp al, 0x52
je 0x592afb
cmp al, 0x72
je 0x592afb
push ecx
lea edx, [esp + 0x10]
mov ecx, esp
mov dword [esp + 0x14], esp
push edx
call fcn.0091203e
lea ecx, [esp + 0x20]
call fcn.007351b0
cmp eax, ebx
je 0x592a49
mov eax, dword [esi + 0x2a40]
lea edx, [esi + 0x2c00]
lea ecx, [esi + 0x2a40]
push edx
mov edx, dword [esp + 0x10]
push 2
push edx
call dword [eax + 0x28]
test eax, eax
jne 0x592ced
push ecx
lea eax, [esp + 0x10]
mov ecx, esp
mov dword [esp + 0x14], esp
push eax
call fcn.0091203e
mov ecx, esi
call fcn.0058df90
jmp 0x592ced
lea ecx, [esp + 0x10]
call fcn.00911f0c
mov ecx, dword [0xa8fd20]
lea edx, [esp + 0x10]
push ecx
push 0xa8fd60
push 0xa7d368
push edx
mov byte [esp + 0x8f4], 4
call fcn.00911f42
add esp, 0xc
lea eax, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x18], esp
push eax
call fcn.0091203e
lea ecx, [esp + 0x20]
call fcn.007351b0
cmp eax, ebx
je 0x592adc
mov edx, dword [esi + 0x2a40]
lea eax, [esi + 0x2c00]
lea ecx, [esi + 0x2a40]
push eax
mov eax, dword [esp + 0x10]
push 0x1002
push eax
call dword [edx + 0x28]
test eax, eax
jne 0x592ad3
push ecx
lea edx, [esp + 0x10]
mov ecx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.0091203e
mov ecx, esi
call fcn.0058df90
jmp 0x592ae5
mov ecx, esi
call fcn.005aca00
jmp 0x592ae5
push 0x57
mov ecx, esi
call fcn.00592950
lea ecx, [esp + 0x10]
mov byte [esp + 0x8e4], 2
call fcn.00911ee2
jmp 0x592ced
push ecx
lea eax, [esp + 0x10]
mov ecx, esp
mov dword [esp + 0x18], esp
push eax
call fcn.0091203e
lea ecx, [esp + 0x20]
call fcn.007351b0
cmp eax, ebx
je 0x592b5a
mov edx, dword [esi + 0x2a40]
lea eax, [esi + 0x2c00]
lea ecx, [esi + 0x2a40]
push eax
mov eax, dword [esp + 0x10]
push ebx
push eax
call dword [edx + 0x28]
test eax, eax
jne 0x592ced
push ecx
lea edx, [esp + 0x10]
mov ecx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.0091203e
mov ecx, esi
call fcn.0058df90
jmp 0x592ced
lea ecx, [esp + 0x10]
call fcn.00911f0c
mov eax, dword [0xa8fd20]
lea ecx, [esp + 0x10]
push eax
push 0xa8fd60
push 0xa7d368
push ecx
mov byte [esp + 0x8f4], 3
call fcn.00911f42
add esp, 0xc
lea edx, [esp + 0x14]
mov ecx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.0091203e
lea ecx, [esp + 0x20]
call fcn.007351b0
cmp eax, ebx
je 0x592bec
mov eax, dword [esi + 0x2a40]
lea edx, [esi + 0x2c00]
lea ecx, [esi + 0x2a40]
push edx
mov edx, dword [esp + 0x10]
push 0x1002
push edx
call dword [eax + 0x28]
test eax, eax
jne 0x592be3
push ecx
lea eax, [esp + 0x10]
mov ecx, esp
mov dword [esp + 0x18], esp
push eax
call fcn.0091203e
mov ecx, esi
call fcn.0058df90
jmp 0x592bf5
mov ecx, esi
call fcn.005aca00
jmp 0x592bf5
push 0x57
mov ecx, esi
call fcn.00592950
lea ecx, [esp + 0x10]
mov byte [esp + 0x8e4], 2
call fcn.00911ee2
jmp 0x592ced
mov edx, dword [esi + 0x2a40]
lea eax, [esi + 0x2c00]
lea ecx, [esi + 0x2a40]
push eax
mov eax, dword [esp + 0x10]
push 0x1002
push eax
call dword [edx + 0x28]
test eax, eax
jne 0x592c47
push ecx
lea edx, [esp + 0x10]
mov ecx, esp
mov dword [esp + 0x18], esp
push edx
call fcn.0091203e
mov ecx, esi
call fcn.0058df90
mov ecx, esi
call fcn.005906f0
mov ax, word [0xa8e768]
mov edi, 1
mov word [esi + 0x34a8], ax
mov dword [esp + 0x10], edi
mov ax, word [esi + 0x34a8]
mov cx, word [0xa8e7aa]
cmp ax, 0x23
mov word [esi + 0x34aa], cx
je 0x592cac
cmp ax, 0x51
je 0x592cac
cmp ax, 0x55
je 0x592cac
cmp ax, 0x4d
je 0x592cac
cmp ax, 0x57
je 0x592cac
cmp ax, 0x5a
je 0x592cac
cmp ax, 0x5b
je 0x592cac
mov word [esi + 0x34ac], bx
jmp 0x592cb5
mov word [esi + 0x34ac], 1
fild dword [esp + 0x10]
push edi
mov ecx, esi
fstp qword [esi + 0x34b0]
call fcn.0058db40
inc edi
mov dword [esp + 0x10], edi
lea edx, [edi - 1]
cmp edx, 3
jl 0x592c64
mov ecx, esi
call fcn.005906f0
push ebx
mov ecx, esi
mov dword [esi + 0x34c4], 2
call fcn.0058db40
mov eax, dword [esi + 0x2a40]
lea ecx, [esi + 0x2a40]
push ebx
push ebx
call dword [eax + 0x30]
push ebx
mov ecx, esi
call fcn.0058db90
mov ecx, dword [esi + 0x34c4]
mov byte [esp + 0x8e4], 1
mov dword [esi + 0x22f0], ecx
lea ecx, [esp + 0xc]
call fcn.00911ee2
lea ecx, [esp + 0x18]
mov byte [esp + 0x8e4], bl
call fcn.00911ee2
push fcn.00911ee2
push 0x12d
lea edx, [esp + 0x88]
push 4
push edx
mov dword [esp + 0x8f4], 5
call fcn.009128f2
lea ecx, [esp + 0x1c]
mov dword [esp + 0x8e4], 0xffffffff
call fcn.00911f36
mov ecx, dword [esp + 0x8dc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
add esp, 0x8dc
ret 4