Function at 0x59308c
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x94e962
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 0xa7d3f0
push ecx
mov byte [esp + 0x8f4], 2
call fcn.00911f42
mov al, byte [esp + 0x8fc]
add esp, 0x10
cmp al, 0x57
je 0x59332b
cmp al, 0x77
je 0x59332b
cmp al, 0x52
je 0x59321b
cmp al, 0x72
je 0x59321b
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 0x593169
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 0x59340d
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 0x59340d
lea ecx, [esp + 0x10]
call fcn.00911f0c
mov ecx, dword [0xa8fd20]
lea edx, [esp + 0x10]
push ecx
push 0xa8fd60
push 0xa7d3cc
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 0x5931fc
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 0x5931f3
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 0x593205
mov ecx, esi
call fcn.005aca00
jmp 0x593205
push 0x77
mov ecx, esi
call fcn.00593070
lea ecx, [esp + 0x10]
mov byte [esp + 0x8e4], 2
call fcn.00911ee2
jmp 0x59340d
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 0x59327a
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 0x59340d
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 0x59340d
lea ecx, [esp + 0x10]
call fcn.00911f0c
mov eax, dword [0xa8fd20]
lea ecx, [esp + 0x10]
push eax
push 0xa8fd60
push 0xa7d3cc
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 0x59330c
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 0x593303
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 0x593315
mov ecx, esi
call fcn.005aca00
jmp 0x593315
push 0x77
mov ecx, esi
call fcn.00593070
lea ecx, [esp + 0x10]
mov byte [esp + 0x8e4], 2
call fcn.00911ee2
jmp 0x59340d
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 0x593367
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 [0xa8e7a8]
cmp ax, 0x23
mov word [esi + 0x34aa], cx
je 0x5933cc
cmp ax, 0x51
je 0x5933cc
cmp ax, 0x55
je 0x5933cc
cmp ax, 0x4d
je 0x5933cc
cmp ax, 0x57
je 0x5933cc
cmp ax, 0x5a
je 0x5933cc
cmp ax, 0x5b
je 0x5933cc
mov word [esi + 0x34ac], bx
jmp 0x5933d5
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 0x593384
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