Function at 0x468f20
Capabilities:
Access peb ldr_data

Disassembly:
push 0xffffffffffffffff
push 0x5ea328
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x10
push ebx
push ebp
push esi
mov esi, ecx
push edi
lea ecx, [esp + 0x1c]
call fcn.005e2960
fld qword [esi + 0x9cd0]
call fcn.005e35c0
mov edi, dword [esp + 0x30]
mov ebx, dword [0x640780]
xor ecx, ecx
mov dword [esp + 0x14], eax
mov ebp, dword [edi + 4]
mov cx, word [ebx + 0xc]
mov eax, ebp
xor edx, edx
div ecx
mov ecx, dword [esp + 0x14]
mov edx, dword [0x6405c4]
cmp edx, ecx
jb 0x468fd6
mov edx, dword [esi + 0x30d0]
cmp edx, 1
je 0x468fd6
cmp edx, 2
je 0x468fd6
mov edx, dword [esi + 0x9d08]
test edx, edx
jne 0x468fd6
mov edx, dword [esi + 0x9d6c]
test edx, edx
jne 0x468fd6
mov dword [esp + 0x14], ecx
xor ecx, ecx
mov dword [esp + 0x18], ecx
fild qword [esp + 0x14]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], ecx
fsubr qword [esi + 0x9cd0]
fild qword [esp + 0x14]
fmulp st(1)
call fcn.005e35c0
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], 1
jmp 0x468fe2
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], 0
cmp word [ebx + 2], 1
jne 0x469202
xor ecx, ecx
mov cx, word [ebx + 0xe]
add ecx, 0xfffffff8
cmp ecx, 0x18
ja case.0x46921c.12
xor edx, edx
mov dl, byte [ecx + 0x469698]
jmp dword [edx*4 + 0x469684]
xor ecx, ecx
test ebp, ebp
jbe case.0x46921c.12
xor eax, eax
cmp ecx, eax
jne 0x469026
cmp dword [0x6405c4], eax
je 0x469037
mov ebx, dword [esi + 0x300c]
mov edx, dword [esi + 0x3240]
dec ebx
cmp edx, ebx
jb 0x46903f
mov dword [esi + 0x3240], eax
jmp 0x469046
inc edx
mov dword [esi + 0x3240], edx
mov edx, dword [esi + 0x3240]
mov ebx, dword [esi + 0x3004]
mov ebp, dword [edi]
mov dl, byte [ebx + edx*4]
mov byte [ecx + ebp], dl
mov ebx, dword [0x640780]
xor edx, edx
mov dx, word [ebx + 0xc]
add ecx, edx
mov edx, dword [edi + 4]
cmp ecx, edx
jb 0x46901a
jmp case.0x46921c.12
xor ecx, ecx
test ebp, ebp
jbe case.0x46921c.12
xor eax, eax
cmp ecx, eax
jne 0x46908c
cmp dword [0x6405c4], eax
je 0x46909d
mov ebx, dword [esi + 0x300c]
mov edx, dword [esi + 0x3240]
dec ebx
cmp edx, ebx
jb 0x4690a5
mov dword [esi + 0x3240], eax
jmp 0x4690ac
inc edx
mov dword [esi + 0x3240], edx
mov edx, dword [esi + 0x3240]
mov ebx, dword [esi + 0x3004]
mov dx, word [ebx + edx*4]
mov word [esp + 0x30], dx
mov edx, dword [edi]
mov bl, byte [esp + 0x30]
mov byte [edx + ecx], bl
mov edx, dword [edi]
mov bl, byte [esp + 0x31]
mov byte [edx + ecx + 1], bl
mov ebx, dword [0x640780]
xor edx, edx
mov dx, word [ebx + 0xc]
add ecx, edx
mov edx, dword [edi + 4]
cmp ecx, edx
jb 0x469080
jmp case.0x46921c.12
xor ecx, ecx
test ebp, ebp
jbe case.0x46921c.12
xor eax, eax
cmp ecx, eax
jne 0x469106
cmp dword [0x6405c4], eax
je 0x469117
mov ebx, dword [esi + 0x300c]
mov edx, dword [esi + 0x3240]
dec ebx
cmp edx, ebx
jb 0x46911f
mov dword [esi + 0x3240], eax
jmp 0x469126
inc edx
mov dword [esi + 0x3240], edx
mov edx, dword [esi + 0x3240]
mov ebx, dword [esi + 0x3004]
mov edx, dword [ebx + edx*4]
and edx, 0xffffff
mov dword [esp + 0x30], edx
mov edx, dword [edi]
mov bl, byte [esp + 0x30]
mov byte [edx + ecx], bl
mov edx, dword [edi]
mov bl, byte [esp + 0x31]
mov byte [edx + ecx + 1], bl
mov edx, dword [edi]
mov bl, byte [esp + 0x32]
mov byte [edx + ecx + 2], bl
mov ebx, dword [0x640780]
xor edx, edx
mov dx, word [ebx + 0xc]
add ecx, edx
mov edx, dword [edi + 4]
cmp ecx, edx
jb 0x4690fa
jmp case.0x46921c.12
xor ecx, ecx
test ebp, ebp
jbe case.0x46921c.12
xor eax, eax
cmp ecx, eax
jne 0x46918e
cmp dword [0x6405c4], eax
je 0x46919f
mov ebx, dword [esi + 0x300c]
mov edx, dword [esi + 0x3240]
dec ebx
cmp edx, ebx
jb 0x4691a7
mov dword [esi + 0x3240], eax
jmp 0x4691ae
inc edx
mov dword [esi + 0x3240], edx
mov edx, dword [esi + 0x3240]
mov ebx, dword [esi + 0x3004]
mov edx, dword [ebx + edx*4]
mov dword [esp + 0x30], edx
mov edx, dword [edi]
mov bl, byte [esp + 0x30]
mov byte [edx + ecx], bl
mov edx, dword [edi]
mov bl, byte [esp + 0x31]
mov byte [edx + ecx + 1], bl
mov edx, dword [edi]
mov bl, byte [esp + 0x32]
mov byte [edx + ecx + 2], bl
mov edx, dword [edi]
mov bl, byte [esp + 0x33]
mov byte [edx + ecx + 3], bl
mov ebx, dword [0x640780]
xor edx, edx
mov dx, word [ebx + 0xc]
add ecx, edx
mov edx, dword [edi + 4]
cmp ecx, edx
jb 0x469182
jmp case.0x46921c.12
xor ecx, ecx
mov cx, word [ebx + 0xe]
add ecx, 0xfffffff8
cmp ecx, 0x18
ja case.0x46921c.12
xor eax, eax
mov al, byte [ecx + 0x4696c8]
jmp dword [eax*4 + 0x4696b4]
xor ecx, ecx
test ebp, ebp
jbe case.0x46921c.12
xor ebp, ebp
cmp ecx, ebp
jne 0x46923b
cmp dword [0x6405c4], ebp
je 0x46924c
mov eax, dword [esi + 0x300c]
mov edx, dword [esi + 0x3240]
dec eax
cmp edx, eax
jb 0x469254
mov dword [esi + 0x3240], ebp
jmp 0x46925b
inc edx
mov dword [esi + 0x3240], edx
mov edx, dword [esi + 0x3240]
mov eax, dword [esi + 0x3004]
mov ebx, dword [edi]
mov dl, byte [eax + edx*4]
xor eax, eax
mov byte [ebx + ecx], dl
mov ebx, dword [0x640780]
mov ax, word [ebx + 0xc]
add ecx, eax
mov eax, dword [edi + 4]
cmp ecx, eax
jb 0x46922f
jmp case.0x46921c.12
xor ecx, ecx
test ebp, ebp
jbe case.0x46921c.12
xor ebp, ebp
cmp ecx, ebp
jne 0x4692a1
cmp dword [0x6405c4], ebp
je 0x4692b2
mov eax, dword [esi + 0x300c]
mov edx, dword [esi + 0x3240]
dec eax
cmp edx, eax
jb 0x4692ba
mov dword [esi + 0x3240], ebp
jmp 0x4692c1
inc edx
mov dword [esi + 0x3240], edx
mov edx, dword [esi + 0x3240]
mov eax, dword [esi + 0x3004]
mov dx, word [eax + edx*4]
mov eax, dword [edi]
mov word [esp + 0x30], dx
mov byte [eax + ecx], dl
mov eax, dword [edi]
mov dl, byte [esp + 0x31]
mov byte [eax + ecx + 1], dl
mov ebx, dword [0x640780]
xor eax, eax
mov ax, word [ebx + 0xc]
add ecx, eax
mov eax, dword [edi + 4]
cmp ecx, eax
jb 0x469295
jmp case.0x46921c.12
xor ecx, ecx
test ebp, ebp
jbe case.0x46921c.12
xor eax, eax
cmp ecx, eax
jne 0x469317
cmp dword [0x6405c4], eax
je 0x469328
mov ebx, dword [esi + 0x300c]
mov edx, dword [esi + 0x3240]
dec ebx
cmp edx, ebx
jb 0x469330
mov dword [esi + 0x3240], eax
jmp 0x469337
inc edx
mov dword [esi + 0x3240], edx
mov edx, dword [esi + 0x3240]
mov ebx, dword [esi + 0x3004]
mov edx, dword [ebx + edx*4]
and edx, 0xffffff
mov dword [esp + 0x30], edx
mov edx, dword [edi]
mov bl, byte [esp + 0x30]
mov byte [edx + ecx], bl
mov edx, dword [edi]
mov bl, byte [esp + 0x31]
mov byte [edx + ecx + 1], bl
mov edx, dword [edi]
mov bl, byte [esp + 0x32]
mov byte [edx + ecx + 2], bl
mov ebx, dword [0x640780]
xor edx, edx
mov dx, word [ebx + 0xc]
add ecx, edx
mov edx, dword [edi + 4]
cmp ecx, edx
jb 0x46930b
jmp case.0x46921c.12
xor ecx, ecx
test ebp, ebp
jbe case.0x46921c.12
xor ebp, ebp
cmp ecx, ebp
jne 0x469398
cmp dword [0x6405c4], ebp
je 0x4693a9
mov eax, dword [esi + 0x300c]
mov edx, dword [esi + 0x3240]
dec eax
cmp edx, eax
jb 0x4693b1
mov dword [esi + 0x3240], ebp
jmp 0x4693b8
inc edx
mov dword [esi + 0x3240], edx
mov edx, dword [esi + 0x3240]
mov eax, dword [esi + 0x3004]
mov edx, dword [eax + edx*4]
mov eax, dword [edi]
mov dword [esp + 0x30], edx
mov byte [eax + ecx], dl
mov eax, dword [edi]
mov dl, byte [esp + 0x31]
mov byte [eax + ecx + 1], dl
mov eax, dword [edi]
mov dl, byte [esp + 0x32]
mov byte [eax + ecx + 2], dl
mov eax, dword [edi]
mov dl, byte [esp + 0x33]
mov byte [eax + ecx + 3], dl
mov ebx, dword [0x640780]
xor eax, eax
mov ax, word [ebx + 0xc]
add ecx, eax
mov eax, dword [edi + 4]
cmp ecx, eax
jb 0x46938c
mov cx, word [ebx + 2]
cmp cx, 1
jne 0x46941e
mov eax, dword [esp + 0x10]
test eax, eax
je 0x46965d
jmp 0x46964f
cmp cx, 2
jne 0x46965d
xor ecx, ecx
mov cx, word [ebx + 0xe]
add ecx, 0xfffffff8
cmp ecx, 0x18
ja case.0x469442.12
xor edx, edx
mov dl, byte [ecx + 0x4696f8]
jmp dword [edx*4 + 0x4696e4]
mov eax, dword [edi + 4]
mov ecx, 1
cmp eax, ecx
jbe case.0x469442.12
xor ebp, ebp
cmp ecx, ebp
jne 0x469467
cmp dword [0x6405c4], ebp
je 0x469478
mov eax, dword [esi + 0x300c]
mov edx, dword [esi + 0x3240]
dec eax
cmp edx, eax
jb 0x469480
mov dword [esi + 0x3240], ebp
jmp 0x469487
inc edx
mov dword [esi + 0x3240], edx
mov edx, dword [esi + 0x3240]
mov eax, dword [esi + 0x3008]
mov ebx, dword [edi]
mov dl, byte [eax + edx*4]
xor eax, eax
mov byte [ebx + ecx], dl
mov ebx, dword [0x640780]
mov ax, word [ebx + 0xc]
add ecx, eax
mov eax, dword [edi + 4]
cmp ecx, eax
jb 0x46945b
jmp case.0x469442.12
mov eax, dword [edi + 4]
mov ecx, 2
cmp eax, ecx
jbe case.0x469442.12
xor ebp, ebp
cmp ecx, ebp
jne 0x4694d3
cmp dword [0x6405c4], ebp
je 0x4694e4
mov eax, dword [esi + 0x300c]
mov edx, dword [esi + 0x3240]
dec eax
cmp edx, eax
jb 0x4694ec
mov dword [esi + 0x3240], ebp
jmp 0x4694f3
inc edx
mov dword [esi + 0x3240], edx
mov edx, dword [esi + 0x3240]
mov eax, dword [esi + 0x3008]
mov dx, word [eax + edx*4]
mov eax, dword [edi]
mov word [esp + 0x30], dx
mov byte [eax + ecx], dl
mov eax, dword [edi]
mov dl, byte [esp + 0x31]
mov byte [eax + ecx + 1], dl
mov ebx, dword [0x640780]
xor eax, eax
mov ax, word [ebx + 0xc]
add ecx, eax
mov eax, dword [edi + 4]
cmp ecx, eax
jb 0x4694c7
jmp case.0x469442.12
mov eax, dword [edi + 4]
mov ecx, 3
cmp eax, ecx
jbe case.0x469442.12
xor eax, eax
cmp ecx, eax
jne 0x46954f
cmp dword [0x6405c4], eax
je 0x469560
mov ebx, dword [esi + 0x300c]
mov edx, dword [esi + 0x3240]
dec ebx
cmp edx, ebx
jb 0x469568
mov dword [esi + 0x3240], eax
jmp 0x46956f
inc edx
mov dword [esi + 0x3240], edx
mov edx, dword [esi + 0x3240]
mov ebx, dword [esi + 0x3008]
mov edx, dword [ebx + edx*4]
and edx, 0xffffff
mov dword [esp + 0x30], edx
mov edx, dword [edi]
mov bl, byte [esp + 0x30]
mov byte [edx + ecx], bl
mov edx, dword [edi]
mov bl, byte [esp + 0x31]
mov byte [edx + ecx + 1], bl
mov edx, dword [edi]
mov bl, byte [esp + 0x32]
mov byte [edx + ecx + 2], bl
mov ebx, dword [0x640780]
xor edx, edx
mov dx, word [ebx + 0xc]
add ecx, edx
mov edx, dword [edi + 4]
cmp ecx, edx
jb 0x469543
jmp case.0x469442.12
mov eax, dword [edi + 4]
mov ecx, 4
cmp eax, ecx
jbe case.0x469442.12
test ecx, ecx
jne 0x4695d8
mov eax, dword [0x6405c4]
test eax, eax
je 0x4695e9
mov eax, dword [esi + 0x300c]
mov edx, dword [esi + 0x3240]
dec eax
cmp edx, eax
jb 0x4695f5
mov dword [esi + 0x3240], 0
jmp 0x4695fc
inc edx
mov dword [esi + 0x3240], edx
mov edx, dword [esi + 0x3240]
mov eax, dword [esi + 0x3008]
mov edx, dword [eax + edx*4]
mov eax, dword [edi]
mov dword [esp + 0x30], edx
mov byte [eax + ecx], dl
mov eax, dword [edi]
mov dl, byte [esp + 0x31]
mov byte [eax + ecx + 1], dl
mov eax, dword [edi]
mov dl, byte [esp + 0x32]
mov byte [eax + ecx + 2], dl
mov eax, dword [edi]
mov dl, byte [esp + 0x33]
mov byte [eax + ecx + 3], dl
mov ebx, dword [0x640780]
xor eax, eax
mov ax, word [ebx + 0xc]
add ecx, eax
mov eax, dword [edi + 4]
cmp ecx, eax
jb 0x4695cb
mov eax, dword [esp + 0x10]
test eax, eax
je 0x46965d
xor ecx, ecx
mov cx, word [ebx + 0xc]
imul ecx, dword [esp + 0x14]
mov dword [edi + 4], ecx
lea ecx, [esp + 0x1c]
mov dword [esp + 0x28], 0xffffffff
call fcn.005e2954
mov ecx, dword [esp + 0x20]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x1c
ret 4