Function at 0xb0d874
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 0xb
push 0
push 0
dec ecx
jne 0xb0d87d
xchg dword [ebp - 4], ecx
push ebx
mov dword [ebp - 0xc], ecx
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0xb0e065
push dword fs:[eax]
mov dword fs:[eax], esp
xor ecx, ecx
mov dl, 1
mov eax, dword [0xaf44ec]
call fcn.00af4758
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x18]
call fcn.00af4898
mov dx, word [0xb0e074]
not edx
and dx, ax
mov eax, dword [ebp - 0x18]
call fcn.00af49ec
mov eax, dword [ebp - 0x18]
call fcn.00af4898
mov dx, word [0xb0e078]
not edx
and dx, ax
mov eax, dword [ebp - 0x18]
call fcn.00af49ec
mov eax, dword [ebp - 0x18]
call fcn.00af4898
mov edx, eax
or dx, word [0xb0e07c]
mov eax, dword [ebp - 0x18]
call fcn.00af49ec
mov eax, dword [ebp - 0x18]
call fcn.00af48a4
mov edx, 0xb0e088
call fcn.00af4320
mov eax, dword [ebp - 0x18]
call fcn.00af48ac
mov edx, 0xb0e098
mov ecx, dword [eax]
call dword [ecx]
mov eax, dword [ebp - 0x18]
call fcn.00af48ac
call fcn.00af0688
mov ecx, 0xb0e0b0
mov edx, 0xb0e0bc
call fcn.00af10e8
mov eax, dword [ebp - 0x18]
call fcn.00af48ac
call fcn.00af0688
mov ecx, 0xb0e0cc
mov edx, 0xb0e100
call fcn.00af10e8
mov eax, dword [ebp - 0x18]
call fcn.00af48ac
call fcn.00af0688
mov ecx, 0xb0e114
mov edx, 0xb0e144
call fcn.00af10e8
mov eax, dword [ebp - 0x18]
call fcn.00af48ac
call fcn.00af0688
mov ecx, 0xb0e158
mov edx, 0xb0e180
call fcn.00af10e8
mov eax, dword [ebp - 0x18]
call fcn.00af48ac
call fcn.00af0688
mov ecx, 0xb0e194
mov edx, 0xb0e1c0
call fcn.00af10e8
mov eax, dword [ebp - 0x18]
call fcn.00af48ac
call fcn.00af0688
mov ecx, 0xb0e1d4
mov edx, 0xb0e204
call fcn.00af10e8
mov eax, dword [ebp - 0x18]
call fcn.00af48ac
call fcn.00af0624
mov edx, 0xb0e218
call fcn.00af0750
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
call fcn.00af0624
mov edx, 0xb0e22c
call fcn.00af0750
add eax, 8
mov edx, dword [ebp - 8]
mov edx, dword [edx + 8]
call fcn.00405240
mov eax, dword [ebp - 0x18]
call fcn.00af48ac
call fcn.00af0624
mov edx, 0xb0e240
call fcn.00af0750
call fcn.00af0624
mov edx, 0xb0e254
call fcn.00af0750
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
call fcn.00af0624
mov edx, 0xb0e268
call fcn.00af0750
add eax, 8
mov edx, dword [ebp - 8]
mov edx, dword [edx + 0xc]
call fcn.00405240
mov eax, dword [ebp - 0x20]
call fcn.00af0624
mov edx, 0xb0e27c
call fcn.00af0750
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 8]
push dword [eax + 0x34]
push dword [eax + 0x30]
lea edx, [ebp - 0x30]
mov eax, 0xb0e290
call fcn.0040e1d4
push dword [ebp - 0x30]
push 0xb0e2a4
mov eax, dword [ebp - 8]
push dword [eax + 0x34]
push dword [eax + 0x30]
lea edx, [ebp - 0x34]
mov eax, 0xb0e2b0
call fcn.0040e1d4
push dword [ebp - 0x34]
mov eax, dword [ebp - 0x24]
call fcn.00af0624
mov edx, 0xb0e2c4
call fcn.00af0750
add eax, 8
mov edx, 3
call fcn.0040556c
mov eax, dword [ebp - 0x24]
call fcn.00af0624
mov edx, 0xb0e2d4
call fcn.00af0750
add eax, 8
mov edx, dword [ebp - 8]
mov edx, dword [edx + 0x24]
call fcn.00405240
mov eax, dword [ebp - 0x24]
call fcn.00af0624
mov edx, 0xb0e2e8
call fcn.00af0750
add eax, 8
push eax
lea edx, [ebp - 0x38]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x28]
call fcn.0040ae2c
mov edx, dword [ebp - 0x38]
pop eax
call fcn.00405240
mov eax, dword [ebp - 0x24]
call fcn.00af0624
mov edx, 0xb0e2fc
call fcn.00af0750
add eax, 8
push eax
lea edx, [ebp - 0x3c]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x2c]
call fcn.0040ae2c
mov edx, dword [ebp - 0x3c]
pop eax
call fcn.00405240
mov eax, dword [ebp - 8]
cmp byte [eax + 0x10], 0
je 0xb0db5e
mov eax, dword [ebp - 0x24]
call fcn.00af0624
mov edx, 0xb0e310
call fcn.00af0750
add eax, 8
mov edx, 0xb0e320
call fcn.00405240
jmp 0xb0db7d
mov eax, dword [ebp - 0x24]
call fcn.00af0624
mov edx, 0xb0e310
call fcn.00af0750
add eax, 8
mov edx, 0xb0e330
call fcn.00405240
mov eax, dword [ebp - 0x20]
call fcn.00af0624
mov edx, 0xb0e340
call fcn.00af0750
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
mov eax, dword [eax + 8]
dec eax
test eax, eax
jl 0xb0e02f
inc eax
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x10], 0
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
call fcn.00af8898
cmp dword [eax + 0x20], 0
je 0xb0dcd2
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
call fcn.00af8898
cmp dword [eax + 8], 0
jne 0xb0dcd2
mov eax, dword [ebp - 0x28]
call fcn.00af0624
mov edx, 0xb0e354
call fcn.00af0750
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
call fcn.00af0624
mov edx, 0xb0e368
call fcn.00af0750
add eax, 8
push eax
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
call fcn.00af8898
mov edx, dword [eax + 0x20]
pop eax
call fcn.00405240
mov eax, dword [ebp - 0x1c]
call fcn.00af0624
mov edx, 0xb0e37c
call fcn.00af0750
add eax, 8
push eax
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
call fcn.00af8898
mov edx, dword [eax + 0x24]
pop eax
call fcn.00405240
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
call fcn.00af8898
fild qword [eax + 0x10]
fdiv dword [0xb0e384]
fabs
add esp, 0xfffffff4
fstp xword [esp]
wait
lea edx, [ebp - 0x14]
mov eax, 0xb0e390
call fcn.0040cc18
mov al, byte [0xb0e07c]
push eax
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x44]
mov edx, dword [0xba25f0]
mov dl, byte [edx]
call fcn.004053d4
mov edx, dword [ebp - 0x44]
mov ecx, 0xb0e3a0
mov eax, dword [ebp - 0x14]
call fcn.00410968
mov edx, dword [ebp - 0x40]
lea eax, [ebp - 0x14]
call fcn.00405284
mov eax, dword [ebp - 0x1c]
call fcn.00af0624
mov edx, 0xb0e3ac
call fcn.00af0750
add eax, 8
mov edx, dword [ebp - 0x14]
call fcn.00405240
jmp 0xb0e023
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
call fcn.00af8898
cmp dword [eax + 0x20], 0
je 0xb0de52
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
call fcn.00af8898
cmp dword [eax + 8], 1
jne 0xb0de52
mov eax, dword [ebp - 0x28]
call fcn.00af0624
mov edx, 0xb0e3c0
call fcn.00af0750
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x1c]
call fcn.00af0624
mov edx, 0xb0e368
call fcn.00af0750
add eax, 8
push eax
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
call fcn.00af8898
mov edx, dword [eax + 0x20]
pop eax
call fcn.00405240
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
call fcn.00af8898
cmp dword [eax + 0x24], 0
je 0xb0dd85
mov eax, dword [ebp - 0x1c]
call fcn.00af0624
mov edx, 0xb0e37c
call fcn.00af0750
add eax, 8
push eax
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
call fcn.00af8898
mov edx, dword [eax + 0x24]
pop eax
call fcn.00405240
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
call fcn.00af8898
fild qword [eax + 0x10]
fdiv dword [0xb0e384]
fabs
add esp, 0xfffffff4
fstp xword [esp]
wait
lea edx, [ebp - 0x14]
mov eax, 0xb0e390
call fcn.0040cc18
mov al, byte [0xb0e07c]
push eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x4c]
mov edx, dword [0xba25f0]
mov dl, byte [edx]
call fcn.004053d4
mov edx, dword [ebp - 0x4c]
mov ecx, 0xb0e3a0
mov eax, dword [ebp - 0x14]
call fcn.00410968
mov edx, dword [ebp - 0x48]
lea eax, [ebp - 0x14]
call fcn.00405284
mov eax, dword [ebp - 0x1c]
call fcn.00af0624
mov edx, 0xb0e3ac
call fcn.00af0750
add eax, 8
mov edx, dword [ebp - 0x14]
call fcn.00405240
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
call fcn.00af8898
fild qword [eax + 0x18]
fmul dword [0xb0e3cc]
fdiv dword [0xb0e384]
call fcn.0040315c
push edx
push eax
lea eax, [ebp - 0x14]
call fcn.0040af18
mov eax, dword [ebp - 0x1c]
call fcn.00af0624
mov edx, 0xb0e3d8
call fcn.00af0750
add eax, 8
mov edx, dword [ebp - 0x14]
call fcn.00405240
jmp 0xb0e023
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
call fcn.00af8898
cmp dword [eax + 0x20], 0
jne 0xb0e023
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
call fcn.00af8898
cmp dword [eax + 0x30], 0
je 0xb0e023
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
call fcn.00af8898
cmp dword [eax + 0x38], 0
je 0xb0e023
mov eax, dword [ebp - 0x28]
call fcn.00af0624
mov edx, 0xb0e3ec
call fcn.00af0750
mov dword [ebp - 0x1c], eax
lea edx, [ebp - 0x14]
mov eax, dword [ebp - 0x10]
inc eax
call fcn.0040ae2c
mov eax, dword [ebp - 0x1c]
call fcn.00af0624
mov edx, 0xb0e400
call fcn.00af0750
add eax, 8
mov edx, dword [ebp - 0x14]
call fcn.00405240
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
call fcn.00af8898
mov eax, dword [eax + 0x38]
push eax
mov ecx, 0xb0e418
mov edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 4]
call fcn.00b0c2e8
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
call fcn.00af8898
fild qword [eax + 0x18]
fdiv dword [0xb0e384]
add esp, 0xfffffff4
fstp xword [esp]
wait
lea edx, [ebp - 0x14]
mov eax, 0xb0e42c
call fcn.0040cc18
mov al, byte [0xb0e07c]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x54]
mov edx, dword [0xba25f0]
mov dl, byte [edx]
call fcn.004053d4
mov edx, dword [ebp - 0x54]
mov ecx, 0xb0e3a0
mov eax, dword [ebp - 0x14]
call fcn.00410968
mov edx, dword [ebp - 0x50]
lea eax, [ebp - 0x14]
call fcn.00405284
mov eax, dword [ebp - 0x1c]
call fcn.00af0624
mov edx, 0xb0e43c
call fcn.00af0750
add eax, 8
mov edx, dword [ebp - 0x14]
call fcn.00405240
mov eax, dword [ebp - 0x1c]
call fcn.00af0624
mov edx, 0xb0e37c
call fcn.00af0750
add eax, 8
push eax
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
call fcn.00af8898
mov edx, dword [eax + 0x24]
pop eax
call fcn.00405240
mov edx, dword [ebp - 0x10]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x38]
call fcn.00af8898
fild qword [eax + 0x10]
fdiv dword [0xb0e384]
fabs
add esp, 0xfffffff4
fstp xword [esp]
wait
lea edx, [ebp - 0x14]
mov eax, 0xb0e390
call fcn.0040cc18
mov al, byte [0xb0e07c]
push eax
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0x5c]
mov edx, dword [0xba25f0]
mov dl, byte [edx]
call fcn.004053d4
mov edx, dword [ebp - 0x5c]
mov ecx, 0xb0e3a0
mov eax, dword [ebp - 0x14]
call fcn.00410968
mov edx, dword [ebp - 0x58]
lea eax, [ebp - 0x14]
call fcn.00405284
mov eax, dword [ebp - 0x1c]
call fcn.00af0624
mov edx, 0xb0e3ac
call fcn.00af0750
add eax, 8
mov edx, dword [ebp - 0x14]
call fcn.00405240
inc dword [ebp - 0x10]
dec dword [ebp - 0x2c]
jne 0xb0dbaf
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp - 0x18]
call fcn.00af48c0
mov eax, dword [ebp - 0x18]
call fcn.0040429c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0xb0e06c
lea eax, [ebp - 0x5c]
mov edx, 0xc
call fcn.00405210
lea eax, [ebp - 0x14]
call fcn.004051ec
ret