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

Disassembly:
mov cl, byte [0x4ba6c0]
sub esp, 8
push ebx
push ebp
push edi
push 0xf00
xor dl, dl
xor al, al
call fcn.00409aa0
xor ebp, ebp
cmp eax, 0x10ec0383
mov dword [esi + 0x114], eax
ja 0x409ead
je 0x409e85
sub eax, 0x10ec0215
cmp eax, 0xeb
ja case.0x409fde.283904099
movzx eax, byte [eax + 0x40a60c]
mov ebx, 1
jmp dword [eax*4 + 0x40a564]
mov dword [esi + 8], ebx
push str.ALC260
jmp 0x40a16d
mov dword [esi + 0x20], ebx
push str.ALC262
jmp 0x40a16d
mov dword [esi + 0x30], ebx
push str.ALC265
jmp 0x40a16d
mov dword [esi + 0x44], ebx
push str.ALC268
jmp 0x40a16d
mov dword [esi + 0x48], ebx
push str.ALC267
jmp 0x40a16d
mov dword [esi + 0x4c], ebx
push str.ALC269
jmp 0x40a16d
mov dword [esi + 0x58], ebx
push str.ALC272
jmp 0x40a16d
mov dword [esi + 0x60], ebx
push str.ALC273
jmp 0x40a16d
mov dword [esi + 0x68], ebx
push str.ALC275
jmp 0x40a16d
mov dword [esi + 0x6c], ebx
push str.ALC269VB
jmp 0x40a16d
mov dword [esi + 0x78], ebx
push str.ALC276
jmp 0x40a16d
mov dword [esi + 0x8c], ebx
mov dword [esi + 0xfc], ebx
push str.ALC222
jmp 0x40a16d
mov dword [esi + 0x94], ebx
push str.ALC290
jmp 0x40a16d
mov dword [esi + 0x98], ebx
push str.ALC280
jmp 0x40a16d
mov dword [esi + 0x9c], ebx
push str.ALC282
jmp 0x40a16d
mov dword [esi + 0xa8], ebx
push str.ALC233
jmp 0x40a16d
mov dword [esi + 0xa8], ebx
mov dword [esi + 0xb4], ebp
push str.ALC283
jmp 0x40a16d
mov dword [esi + 0xa8], ebx
mov dword [esi + 0xb4], ebx
push str.ALC255
jmp 0x40a16d
mov dword [esi + 0xa8], ebx
mov dword [esi + 0xb4], ebx
push str.ALC283
jmp 0x40a16d
mov dword [esi + 0xac], ebx
push str.ALC292
jmp 0x40a16d
mov dword [esi + 0xac], ebx
push str.ALC293
jmp 0x40a16d
mov dword [esi + 0xb0], ebx
push str.ALC284
jmp 0x40a16d
mov dword [esi + 0xb8], ebx
push str.ALC286
jmp 0x40a16d
mov dword [esi + 0xb8], ebx
push str.ALC288
jmp 0x40a16d
mov dword [esi + 0xb8], ebx
mov dword [esi + 0xc8], ebx
push str.ALC298
jmp 0x40a16d
mov ecx, dword [0x4b9d9c]
push str.ALC256
add ecx, 0x150
mov dword [esi + 0xc0], ebx
mov dword [esi + 0xa8], ebx
mov dword [esi + 0xb4], ebx
call fcn.00416020
mov dword [esi + 0xc0], ebx
mov dword [esi + 0xa8], ebx
mov dword [esi + 0xb4], ebx
push str.ALC256
jmp 0x40a16d
mov dword [esi + 0xcc], ebx
push str.ALC295
jmp 0x40a16d
mov dword [esi + 0xcc], ebx
push str.ALC299
jmp 0x40a16d
mov dword [esi + 0xcc], ebx
push str.ALC296
jmp 0x40a16d
mov dword [esi + 0xd8], ebx
push str.ALC225
jmp 0x40a16d
mov dword [esi + 0xdc], ebx
push str.ALC294
jmp 0x40a16d
mov dword [esi + 0xe0], ebx
mov dword [esi + 0xdc], ebx
push str.ALC274
jmp 0x40a16d
mov dword [esi + 0xe4], ebx
mov dword [esi + 0xdc], ebx
push str.ALC234
jmp 0x40a16d
mov dword [esi + 0xec], ebx
mov dword [esi + 0xa8], ebx
mov dword [esi + 0xb4], ebx
push str.ALC257
jmp 0x40a16d
mov dword [esi + 0xf0], ebx
push str.ALC285
jmp 0x40a16d
mov dword [esi + 0xf0], ebx
mov dword [esi + 0x104], ebx
push str.ALC287
jmp 0x40a16d
mov dword [esi + 0xf0], ebx
push str.ALC245
jmp 0x40a16d
mov dword [esi + 0xf0], ebx
push str.ALC249
jmp 0x40a16d
mov dword [esi + 0xf8], ebx
push str.ALC300
jmp 0x40a16d
mov ecx, dword [0x4b9d9c]
push 6
mov ebx, 1
push str.ALC283
add ecx, 0x150
mov dword [esi + 0xa8], ebx
call fcn.004160a0
jmp 0x40a17e
cmp eax, 0x10ec0860
ja 0x409fb6
je 0x409fa2
sub eax, 0x10ec0623
cmp eax, 0xe2
ja case.0x409fde.283904099
movzx ecx, byte [eax + 0x40a724]
jmp dword [ecx*4 + 0x40a6f8]
mov ebx, 1
mov dword [esi + 0x3c], ebx
push str.ALC660VD
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0x40], ebx
push str.ALC662
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0x54], ebx
push str.ALC663
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0x5c], ebx
push str.ALC665
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0x74], ebx
push str.ALC672
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0x7c], ebx
push str.ALC676
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0x8c], ebx
push str.ALC221
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0x8c], ebx
mov dword [esi + 0x100], ebx
push str.ALC623
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0xa0], ebx
push str.ALC668
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0xf4], ebx
push str.ALC700
jmp 0x40a16d
mov ebx, 1
mov dword [esi], ebx
mov dword [esi + 4], ebx
push str.ALC860
jmp 0x40a16d
cmp eax, 0x10ec0b00
ja 0x40a107
je 0x40a0f5
sub eax, 0x10ec0861
cmp eax, 0x9f
ja case.0x409fde.283904099
movzx edx, byte [eax + 0x40a844]
jmp dword [edx*4 + 0x40a808]
mov ebx, 1
mov dword [esi], ebx
push str.ALC880
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0x14], ebx
push str.ALC861
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0x18], ebx
push str.ALC882
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0x28], ebx
push str.ALC883
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0x2c], ebx
push str.ALC885
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0x34], ebx
push str.ALC888
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0x38], ebx
push str.ALC861VD
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0x50], ebx
push str.ALC889
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0x64], ebx
mov dword [esi + 0x34], ebx
push str.ALC888_887
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0x34], ebx
mov dword [esi + 0x80], ebx
push str.ALC892
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0x84], ebx
push str.ALC899
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0xa4], ebx
push str.ALC900
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0xbc], ebx
push str.ALC867
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0x108], ebx
mov dword [esi + 0x34], ebx
push str.ALC897
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0xa4], ebx
push str.ALC1200
jmp 0x40a16d
cmp eax, 0x10ec1220
ja 0x40a140
je 0x40a12e
sub eax, 0x10ec1150
je case.0x409fde.283904256
sub eax, 0x18
jne case.0x409fde.283904099
mov ebx, 1
mov dword [esi + 0xe8], ebx
push str.ALC1168
jmp 0x40a16d
mov ebx, 1
mov dword [esi + 0xe8], ebx
push str.ALC1220
jmp 0x40a16d
cmp eax, 0x13f69880
je 0x40a160
cmp eax, 0x434d4980
je 0x40a160
mov eax, dword [0x4b9d9c]
mov ebx, 1
mov dword [eax + 0x154], ebx
jmp 0x40a17e
mov ebx, 1
push str.CMI9880
mov dword [esi + 0x10], ebx
mov ecx, dword [0x4b9d9c]
add ecx, 0x150
call fcn.00416020
cmp dword [esi + 0xf0], ebx
jne 0x40a1d7
mov cl, byte [0x4ba6c0]
push 0xf00
mov dl, 2
xor al, al
call fcn.00409aa0
test eax, 0x100
je 0x40a1a9
mov dword [esi + 0x10c], ebx
jmp 0x40a1af
mov dword [esi + 0x10c], ebp
mov cl, byte [0x4ba6c0]
push 0xf00
xor dl, dl
xor al, al
call fcn.00409aa0
cmp eax, 0x10ec0245
je 0x40a1d1
cmp eax, 0x10ec0249
jne 0x40a1d7
mov dword [esi + 0x10c], ebx
cmp dword [esi + 0x34], ebx
mov dword [0x4b9f74], ebp
jne 0x40a2f3
mov cl, byte [0x4ba6c0]
push 0xf00
mov dl, 2
xor al, al
call fcn.00409aa0
cmp eax, 0x100100
je 0x40a20f
cmp eax, 0x100101
je 0x40a20f
cmp eax, 0x100202
jne 0x40a217
mov dword [0x4b9f8c], ebx
jmp 0x40a21f
cmp dword [0x4b9f8c], ebp
je 0x40a27a
cmp dword [0x4b9edc], ebx
mov ecx, 0x4ba3b0
jne 0x40a241
mov eax, 0x20000000
call fcn.00425750
xor eax, eax
mov cl, 0x20
call fcn.00409b10
jmp 0x40a269
movzx eax, byte [0x4ba6c0]
shl eax, 0x1c
add eax, 0x2050000
call fcn.00425750
mov cl, byte [0x4ba6c0]
push 0xc00
xor dl, dl
mov al, 0x20
call fcn.00409aa0
xor ecx, ecx
and eax, 0x20
cmp eax, 0x20
sete cl
mov dword [0x4b9f7c], ecx
and eax, 0x300
cmp eax, 0x300
jne 0x40a2ae
cmp dword [0x4b9edc], ebx
mov dword [0x4b9f78], ebx
mov ecx, 0x4ba3b0
jne 0x40a2b6
mov eax, 0x20000000
call fcn.00425750
xor eax, eax
mov cl, 0x20
call fcn.00409b10
jmp 0x40a2de
mov dword [0x4b9f78], ebp
jmp 0x40a2f3
movzx eax, byte [0x4ba6c0]
shl eax, 0x1c
add eax, 0x2050000
call fcn.00425750
mov cl, byte [0x4ba6c0]
push 0xc00
xor dl, dl
mov al, 0x20
call fcn.00409aa0
xor edx, edx
and eax, 0x3fc000
cmp eax, 0x8000
sete dl
mov dword [0x4b9f74], edx
cmp dword [esi + 0x20], ebx
jne 0x40a32d
mov cl, byte [0x4ba6c0]
push 0xf00
mov dl, 2
xor al, al
call fcn.00409aa0
cmp eax, 0x100301
je 0x40a31a
cmp eax, 0x100302
jne 0x40a32d
cmp eax, 0x100302
mov dword [0x4b9f88], ebx
jne 0x40a32d
mov dword [0x4b9f84], ebx
cmp dword [esi + 0x50], ebp
jne 0x40a33e
cmp dword [esi + 0x84], ebp
je 0x40a44b
mov cl, byte [0x4ba6c0]
push 0xf1f
xor dl, dl
mov al, 0x11
call fcn.00409aa0
mov cl, byte [0x4ba6c0]
mov edi, eax
push 0xf1f
xor dl, dl
mov al, 0x12
call fcn.00409aa0
test edi, 0x20000000
jne 0x40a38c
test eax, 0x20000000
jne 0x40a38c
test edi, 0x40000000
je 0x40a38c
test eax, 0x40000000
mov dword [0x4b9f80], ebx
jne 0x40a392
mov dword [0x4b9f80], ebp
cmp dword [0x4b9edc], ebx
jne 0x40a3e7
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x10]
push ecx
mov edx, ecx
push edx
push 0x220414
mov edi, 0x4ba3b0
mov dword [esp + 0x20], ebp
mov dword [esp + 0x1c], 0x20030000
call fcn.00427290
lea eax, [esp + 0x10]
push eax
lea ecx, [esp + 0x10]
push ecx
mov edx, ecx
push edx
push 0x220414
mov dword [esp + 0x20], ebp
mov dword [esp + 0x1c], 0x20084400
call fcn.00427290
jmp 0x40a44b
movzx eax, byte [0x4ba6c0]
shl eax, 0x1c
or eax, 0x2050003
mov ecx, 0x4ba3b0
call fcn.00425750
movzx eax, byte [0x4ba6c0]
shl eax, 0x1c
or eax, 0x2040000
mov ecx, 0x4ba3b0
call fcn.00425750
movzx eax, byte [0x4ba6c0]
shl eax, 0x1c
or eax, 0x2050008
mov ecx, 0x4ba3b0
call fcn.00425750
movzx eax, byte [0x4ba6c0]
shl eax, 0x1c
or eax, 0x2044000
mov ecx, 0x4ba3b0
call fcn.00425750
cmp dword [esi + 0x54], ebp
jne 0x40a455
cmp dword [esi + 0x58], ebp
je 0x40a4a9
mov cl, byte [0x4ba6c0]
push 0xf1f
xor dl, dl
mov al, 0x12
call fcn.00409aa0
mov cl, byte [0x4ba6c0]
mov edi, eax
push 0xf1f
xor dl, dl
mov al, 0x13
call fcn.00409aa0
mov ecx, edi
sar ecx, 0x1e
and cl, 3
sar eax, 0x1e
sub cl, bl
and eax, 3
neg cl
sbb ecx, ecx
xor edx, edx
add ecx, 1
cmp eax, ebx
sete dl
mov dword [0x4b9f70], ecx
mov dword [0x4b9f6c], edx
cmp dword [esi + 0x4c], ebp
jne 0x40a4b3
cmp dword [esi + 0x68], ebp
je 0x40a4d6
mov cl, byte [0x4ba6c0]
push 0xf1f
xor dl, dl
mov al, 0x12
call fcn.00409aa0
xor ecx, ecx
and al, 0xc0
cmp al, 0x40
sete cl
mov dword [0x4b9f68], ecx
cmp dword [esi + 0x4c], ebp
je 0x40a51d
mov cl, byte [0x4ba6c0]
push 0xf00
mov dl, 2
xor al, al
call fcn.00409aa0
sar eax, 8
and eax, 0xf
cmp eax, ebx
jne 0x40a501
mov dword [esi + 0x6c], ebx
mov dword [esi + 0x4c], ebp
jmp 0x40a517
cmp eax, 2
mov dword [esi + 0x6c], ebp
jne 0x40a514
mov dword [esi + 0x90], ebx
mov dword [esi + 0x4c], ebp
jmp 0x40a51d
mov dword [esi + 0x4c], ebx
mov dword [esi + 0x90], ebp
cmp dword [esi + 0x40], ebp
je 0x40a55b
mov cl, byte [0x4ba6c0]
push 0xf00
mov dl, 2
xor al, al
call fcn.00409aa0
and eax, 0xf00
cmp eax, 0x300
jne 0x40a552
mov dword [esi + 0x88], ebx
mov dword [esi + 0x40], ebp
pop edi
pop ebp
pop ebx
add esp, 8
ret
mov dword [esi + 0x88], ebp
mov dword [esi + 0x40], ebx
pop edi
pop ebp
pop ebx
add esp, 8
ret