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

Disassembly:
sub esp, 0x468
mov eax, dword [0x4bacc0]
xor eax, esp
mov dword [esp + 0x464], eax
mov eax, dword [esp + 0x46c]
mov ecx, dword [esp + 0x470]
mov edx, dword [esp + 0x478]
push ebx
mov ebx, dword [esp + 0x478]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x480]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x484]
push ebp
push esi
mov dword [esp + 0x48], edx
mov edx, dword [esp + 0x490]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x494]
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0x498]
push edi
mov dword [esp + 0x50], edx
mov edx, dword [esp + 0x4a0]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x4a4]
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x4a8]
mov esi, 1
xor edi, edi
cmp dword [0x4bd458], edi
mov dword [esp + 0x28], ebx
mov dword [esp + 0x44], edx
mov dword [esp + 0x24], eax
mov dword [esp + 0x34], ecx
mov dword [esp + 0x20], esi
mov dword [esp + 0x2c], esi
je 0x443c3c
call fcn.00452bc0
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x38]
lea edx, [esp + 0x10]
push edx
push esi
push eax
call fcn.0042bc30
mov ebp, eax
add esp, 0xc
cmp ebp, edi
jne 0x443d87
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x58]
push ecx
lea edx, [esp + 0x64]
push edx
push 3
push eax
mov dword [esp + 0x68], edi
mov dword [esp + 0x70], edi
call fcn.0042bdd0
mov ebp, eax
add esp, 0x10
cmp ebp, edi
jne 0x4449b1
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x1c]
push edx
push 2
push eax
mov dword [esp + 0x2c], edi
mov dword [esp + 0x28], edi
call fcn.0042bdd0
mov ebp, eax
add esp, 0x10
cmp ebp, edi
jne 0x4449b1
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x14]
push ecx
push 8
lea edx, [esp + 0x7c]
push edx
push eax
call fcn.0042be60
mov ebp, eax
add esp, 0x10
cmp ebp, edi
jne 0x4449b1
mov eax, 4
mov ecx, 0x4a0e04
lea edx, [esp + 0x74]
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x443cf8
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x443ce0
cmp eax, edi
je 0x443d55
movzx esi, byte [edx]
movzx ebp, byte [ecx]
sub esi, ebp
jne 0x443d47
sub eax, 1
add ecx, 1
add edx, 1
cmp eax, edi
je 0x443d55
movzx esi, byte [edx]
movzx ebp, byte [ecx]
sub esi, ebp
jne 0x443d47
sub eax, 1
add ecx, 1
add edx, 1
cmp eax, edi
je 0x443d55
movzx esi, byte [edx]
movzx ebp, byte [ecx]
sub esi, ebp
jne 0x443d47
sub eax, 1
add ecx, 1
add edx, 1
cmp eax, edi
je 0x443d55
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x443d55
cmp esi, edi
mov eax, 1
jg 0x443d57
or eax, 0xffffffff
jmp 0x443d57
xor eax, eax
cmp eax, edi
mov edx, dword [esp + 0x10]
je 0x443e86
push edx
call fcn.0042bf40
add esp, 4
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x3c]
push edx
mov dword [ecx], 0xffffffff
call fcn.0042bf40
add esp, 4
xor edi, edi
xor ebp, ebp
cmp dword [0x4bd458], edi
je 0x443e69
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x24]
push eax
push ecx
call fcn.00452c70
mov edx, dword [esp + 0x4c]
add esp, 4
push eax
push edx
call fcn.00452c70
add esp, 4
push eax
mov eax, dword [esp + 0x4c]
push eax
call fcn.00452c60
mov ecx, dword [esp + 0x40]
add esp, 4
push eax
push ecx
call fcn.00452c60
mov edx, dword [esp + 0x64]
add esp, 4
push eax
push edx
call fcn.00452c60
add esp, 4
push eax
mov eax, dword [esp + 0x6c]
push eax
call fcn.00452c60
mov ecx, dword [esp + 0x64]
add esp, 4
push eax
push ecx
call fcn.00452c60
mov edx, dword [esp + 0x6c]
add esp, 4
push eax
push edx
call fcn.00452c60
add esp, 4
push eax
push ebx
call fcn.00452c60
add esp, 4
push eax
mov eax, dword [esp + 0x64]
push eax
call fcn.00452c60
mov ecx, dword [esp + 0x64]
add esp, 4
push eax
push ecx
push ebp
call sub.KERNEL32.dll_GetCurrentThreadId
push eax
call fcn.0042ca30
test eax, eax
mov dword [esp + 0x70], eax
fild dword [esp + 0x70]
jge 0x443e43
fadd dword [0x49f698]
fdiv qword [0x49f690]
mov edx, dword [esp + 0x94]
sub esp, 8
fstp qword [esp]
push edx
push str.____06d____012.6f____04X___x_08X__PzAudioInfo____s___d___d___d___d___d___d___d___d___d___s___s___X____r_n
push 0x4cb080
call fcn.00432450
add esp, 0x4c
mov ecx, dword [esp + 0x474]
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
xor ecx, esp
call fcn.004810ab
add esp, 0x468
ret 0x30
mov edi, dword [esp + 0x78]
lea eax, [esp + 0x14]
push eax
push 4
lea ecx, [esp + 0x7c]
push ecx
push edx
call fcn.0042be60
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x4449b1
mov eax, 4
mov ecx, 0x4a0d88
lea edx, [esp + 0x74]
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x443ecf
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x443eb7
test eax, eax
je 0x443f2c
movzx ebp, byte [ecx]
movzx esi, byte [edx]
sub esi, ebp
jne 0x443f1e
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x443f2c
movzx ebp, byte [ecx]
movzx esi, byte [edx]
sub esi, ebp
jne 0x443f1e
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x443f2c
movzx ebp, byte [ecx]
movzx esi, byte [edx]
sub esi, ebp
jne 0x443f1e
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x443f2c
movzx eax, byte [ecx]
movzx esi, byte [edx]
sub esi, eax
je 0x443f2c
test esi, esi
mov eax, 1
jg 0x443f2e
or eax, 0xffffffff
jmp 0x443f2e
xor eax, eax
test eax, eax
jne 0x443d6c
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x14]
push ecx
push 8
lea edx, [esp + 0x7c]
push edx
push eax
call fcn.0042be60
add esp, 0x10
test eax, eax
jne 0x443d6c
jmp 0x443f60
cmp dword [esp + 0x14], 0
je 0x443d6c
mov eax, 4
mov ecx, str.fmt
lea edx, [esp + 0x74]
lea esp, [esp]
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x443f98
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x443f80
test eax, eax
je 0x443ff5
movzx esi, byte [edx]
movzx ebp, byte [ecx]
sub esi, ebp
jne 0x443fe7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x443ff5
movzx esi, byte [edx]
movzx ebp, byte [ecx]
sub esi, ebp
jne 0x443fe7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x443ff5
movzx esi, byte [edx]
movzx ebp, byte [ecx]
sub esi, ebp
jne 0x443fe7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x443ff5
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x443ff5
test esi, esi
mov eax, 1
jg 0x443ff7
or eax, 0xffffffff
jmp 0x443ff7
xor eax, eax
test eax, eax
je 0x444054
mov edx, dword [esp + 0x78]
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1c]
push ecx
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x18]
push 1
push edx
mov dword [esp + 0x28], 0
call fcn.0042bdd0
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x4449b1
mov edx, dword [esp + 0x10]
lea eax, [esp + 0x14]
push eax
push 8
lea ecx, [esp + 0x7c]
push ecx
push edx
call fcn.0042be60
add esp, 0x10
test eax, eax
je 0x443f60
jmp 0x443d6c
mov edx, dword [esp + 0x10]
lea eax, [esp + 0x14]
push eax
push 0x10
lea ecx, [esp + 0x6c]
push ecx
push edx
call fcn.0042be60
add esp, 0x10
test eax, eax
jne 0x443d6c
cmp dword [esp + 0x14], eax
je 0x443d6c
cmp word [esp + 0x64], 1
jne 0x443d6c
mov edx, dword [esp + 0x10]
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1c]
push ecx
push 1
push edx
mov dword [esp + 0x28], 0xffffffff
mov dword [esp + 0x2c], 0xfffffff0
call fcn.0042bdd0
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x4449b1
lea ecx, [esp + 0x1c]
push ecx
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x7c]
lea edx, [esp + 0x1c]
push edx
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x18]
push 1
push eax
call fcn.0042bdd0
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x4449b1
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x14]
push ecx
push 8
lea edx, [esp + 0x7c]
push edx
push eax
call fcn.0042be60
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x443d6c
cmp dword [esp + 0x14], 0
je 0x443d6c
mov eax, 4
mov ecx, str.data
lea edx, [esp + 0x74]
lea esp, [esp]
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x444148
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x444130
test eax, eax
je 0x4441ad
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x444197
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4441a9
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x444197
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4441a9
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x444197
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4441a9
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x4441a9
test esi, esi
mov ebx, dword [esp + 0x28]
mov eax, 1
jg 0x4441af
or eax, 0xffffffff
jmp 0x4441af
mov ebx, dword [esp + 0x28]
xor eax, eax
test eax, eax
je 0x44420e
mov edx, dword [esp + 0x78]
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1c]
push ecx
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x18]
push 1
push edx
mov dword [esp + 0x28], 0
call fcn.0042bdd0
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x4449b1
mov edx, dword [esp + 0x10]
lea eax, [esp + 0x14]
push eax
push 8
lea ecx, [esp + 0x7c]
push ecx
push edx
call fcn.0042be60
mov ebp, eax
add esp, 0x10
test ebp, ebp
je 0x444110
jmp 0x443d6c
cmp dword [esp + 0x34], 0
mov eax, dword [esp + 0x78]
mov dword [esp + 0x28], eax
je 0x44424e
mov eax, dword [esp + 0x34]
mov edx, dword [esp + 0x10]
push eax
lea ecx, [esp + 0x1c]
push ecx
push 1
push edx
mov dword [esp + 0x28], 0
mov dword [eax], 0
call fcn.0042bdd0
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x4449b1
mov eax, dword [esp + 0x44]
test eax, eax
jne 0x444262
cmp dword [esp + 0x24], eax
je 0x444639
jmp 0x44426c
cmp dword [esp + 0x24], 0
mov byte [eax], 0
je 0x444273
mov eax, dword [esp + 0x24]
mov byte [eax], 0
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x1c]
push ecx
lea edx, [esp + 0x1c]
push edx
push 2
add edi, 8
push eax
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], edi
call fcn.0042bdd0
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x444639
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x14]
push ecx
push 8
lea edx, [esp + 0x7c]
push edx
push eax
call fcn.0042be60
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x444639
cmp dword [esp + 0x14], 8
jne 0x444639
mov eax, 4
mov ecx, 0x4a0d70
lea edx, [esp + 0x74]
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x4442f9
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x4442e1
test eax, eax
je 0x444356
movzx esi, byte [edx]
movzx edi, byte [ecx]
sub esi, edi
jne 0x444348
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x444356
movzx esi, byte [edx]
movzx edi, byte [ecx]
sub esi, edi
jne 0x444348
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x444356
movzx esi, byte [edx]
movzx edi, byte [ecx]
sub esi, edi
jne 0x444348
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x444356
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x444356
test esi, esi
mov eax, 1
jg 0x444358
or eax, 0xffffffff
jmp 0x444358
xor eax, eax
test eax, eax
jne 0x444639
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x14]
push edx
push 4
lea eax, [esp + 0x7c]
push eax
push ecx
call fcn.0042be60
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x444639
cmp dword [esp + 0x14], 4
jne 0x444639
mov eax, 4
mov ecx, str.INFO
lea edx, [esp + 0x74]
lea esp, [esp]
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x4443b8
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x4443a0
test eax, eax
je 0x444415
movzx edi, byte [ecx]
movzx esi, byte [edx]
sub esi, edi
jne 0x444407
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x444415
movzx edi, byte [ecx]
movzx esi, byte [edx]
sub esi, edi
jne 0x444407
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x444415
movzx edi, byte [ecx]
movzx esi, byte [edx]
sub esi, edi
jne 0x444407
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x444415
movzx eax, byte [ecx]
movzx esi, byte [edx]
sub esi, eax
je 0x444415
test esi, esi
mov eax, 1
jg 0x444417
or eax, 0xffffffff
jmp 0x444417
xor eax, eax
test eax, eax
jne 0x444639
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x14]
push ecx
push 8
lea edx, [esp + 0x7c]
push edx
push eax
call fcn.0042be60
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x444639
cmp dword [esp + 0x14], 8
jne 0x444639
mov eax, 4
mov ecx, str.INAM
lea edx, [esp + 0x74]
jmp 0x444460
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x444478
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x444460
test eax, eax
je 0x4444d5
movzx esi, byte [edx]
movzx edi, byte [ecx]
sub esi, edi
jne 0x4444c7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4444d5
movzx esi, byte [edx]
movzx edi, byte [ecx]
sub esi, edi
jne 0x4444c7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4444d5
movzx esi, byte [edx]
movzx edi, byte [ecx]
sub esi, edi
jne 0x4444c7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4444d5
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x4444d5
test esi, esi
mov eax, 1
jg 0x4444d7
or eax, 0xffffffff
jmp 0x4444d7
xor eax, eax
test eax, eax
jne 0x44452c
mov eax, dword [esp + 0x44]
test eax, eax
mov ecx, dword [esp + 0x78]
je 0x444512
lea edx, [esp + 0x14]
push edx
mov edx, dword [esp + 0x14]
push ecx
push eax
push edx
call fcn.0042be60
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x444639
mov eax, dword [esp + 0x14]
cmp eax, dword [esp + 0x78]
jmp 0x444614
lea edx, [esp + 0x1c]
push edx
lea eax, [esp + 0x1c]
push eax
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x18]
push 1
push ecx
jmp 0x444600
mov eax, 4
mov ecx, str.IART
lea edx, [esp + 0x74]
lea ebx, [ebx]
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x444558
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x444540
test eax, eax
je 0x4445b5
movzx edi, byte [ecx]
movzx esi, byte [edx]
sub esi, edi
jne 0x4445a7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4445b5
movzx edi, byte [ecx]
movzx esi, byte [edx]
sub esi, edi
jne 0x4445a7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4445b5
movzx edi, byte [ecx]
movzx esi, byte [edx]
sub esi, edi
jne 0x4445a7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4445b5
movzx eax, byte [ecx]
movzx esi, byte [edx]
sub esi, eax
je 0x4445b5
test esi, esi
mov eax, 1
jg 0x4445b7
or eax, 0xffffffff
jmp 0x4445b7
xor eax, eax
test eax, eax
jne 0x444639
mov eax, dword [esp + 0x24]
test eax, eax
mov edx, dword [esp + 0x78]
je 0x4445eb
lea ecx, [esp + 0x14]
push ecx
push edx
push eax
mov eax, dword [esp + 0x1c]
push eax
call fcn.0042be60
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x444639
mov ecx, dword [esp + 0x14]
cmp ecx, dword [esp + 0x78]
jmp 0x444614
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x1c]
push ecx
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x18]
push 1
push edx
mov dword [esp + 0x28], 0
call fcn.0042bdd0
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x444639
mov edx, dword [esp + 0x10]
lea eax, [esp + 0x14]
push eax
push 8
lea ecx, [esp + 0x7c]
push ecx
push edx
call fcn.0042be60
mov ebp, eax
add esp, 0x10
test ebp, ebp
je 0x444442
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x444647
mov dword [eax], 2
test ebx, ebx
mov di, word [esp + 0x72]
mov esi, dword [esp + 0x68]
mov cx, word [esp + 0x66]
je 0x44491a
cmp esi, 0x5622
mov dword [ebx], 0xffffffff
ja 0x4447b8
je 0x44477a
cmp esi, 0x2ee0
ja 0x444730
je 0x4446fb
cmp esi, 0x1f40
je 0x4446d7
cmp esi, 0x2b11
jne 0x44491a
cmp di, 8
jne 0x4446c1
cmp cx, 2
jne case.default.0x4446b2
mov dword [ebx], 5
mov eax, dword [ebx]
movzx eax, byte [eax + 0x4449e8]
jmp dword [eax*4 + 0x4449c8]
mov dword [ebx], 6
jmp 0x4446a9
cmp cx, 2
jne 0x4446cf
mov dword [ebx], 7
jmp 0x4446a9
mov dword [ebx], 8
jmp 0x4446a9
cmp di, 8
jne 0x4446f3
cmp cx, 2
jne 0x4446eb
mov dword [ebx], 1
jmp 0x4446a9
mov dword [ebx], 2
jmp 0x4446a9
mov dword [ebx], 3
jmp 0x4446a9
cmp di, 8
jne 0x444717
cmp cx, 2
jne 0x44470f
mov dword [ebx], 9
jmp 0x4446a9
mov dword [ebx], 0xa
jmp 0x4446a9
cmp cx, 2
jne 0x444725
mov dword [ebx], 0xb
jmp 0x4446a9
mov dword [ebx], 0xc
jmp 0x4446a9
cmp esi, 0x3e80
jne 0x44491a
cmp di, 8
jne 0x44475e
cmp cx, 2
jne 0x444753
mov dword [ebx], 0xd
jmp 0x4446a9
mov dword [ebx], 0xe
jmp 0x4446a9
cmp cx, 2
jne 0x44476f
mov dword [ebx], 0xf
jmp 0x4446a9
mov dword [ebx], 0x10
jmp 0x4446a9
cmp di, 8
jne 0x44479c
cmp cx, 2
jne 0x444791
mov dword [ebx], 0x11
jmp 0x4446a9
mov dword [ebx], 0x12
jmp 0x4446a9
cmp cx, 2
jne 0x4447ad
mov dword [ebx], 0x13
jmp 0x4446a9
mov dword [ebx], 0x14
jmp 0x4446a9
cmp esi, 0xac44
ja 0x444898
je 0x44485a
cmp esi, 0x5dc0
je 0x44481c
cmp esi, 0x7d00
jne 0x44491a
cmp di, 8
jne 0x444800
cmp cx, 2
jne 0x4447f5
mov dword [ebx], 0x19
jmp 0x4446a9
mov dword [ebx], 0x1a
jmp 0x4446a9
cmp cx, 2
jne 0x444811
mov dword [ebx], 0x1b
jmp 0x4446a9
mov dword [ebx], 0x1c
jmp 0x4446a9
cmp di, 8
jne 0x44483e
cmp cx, 2
jne 0x444833
mov dword [ebx], 0x15
jmp 0x4446a9
mov dword [ebx], 0x16
jmp 0x4446a9
cmp cx, 2
jne 0x44484f
mov dword [ebx], 0x17
jmp 0x4446a9
mov dword [ebx], 0x18
jmp 0x4446a9
cmp di, 8
jne 0x44487c
cmp cx, 2
jne 0x444871
mov dword [ebx], 0x1d
jmp 0x4446a9
mov dword [ebx], 0x1e
jmp 0x4446a9
cmp cx, 2
jne 0x44488d
mov dword [ebx], 0
jmp 0x4446a9
mov dword [ebx], 0x20
jmp 0x4446a9
cmp esi, 0xbb80
jne 0x44491a
cmp di, 8
jne 0x4448b6
xor eax, eax
cmp cx, 2
setne al
add eax, 0x21
mov dword [ebx], eax
jmp 0x44491a
xor edx, edx
cmp cx, 2
setne dl
add edx, 0x23
mov dword [ebx], edx
jmp 0x44491a
mov dword [esp + 0x20], 0x1b9
mov dword [esp + 0x2c], 0x50
jmp 0x44491a
mov dword [esp + 0x20], 8
jmp 0x44491a
mov dword [esp + 0x20], 1
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x444927
movzx edx, di
mov dword [eax], edx
mov eax, dword [esp + 0x48]
test eax, eax
je 0x444931
mov dword [eax], esi
mov eax, dword [esp + 0x54]
test eax, eax
je 0x44493e
movzx edx, cx
mov dword [eax], edx
mov eax, dword [esp + 0x50]
test eax, eax
je 0x444952
mov edx, dword [esp + 0x6c]
add edx, edx
add edx, edx
add edx, edx
mov dword [eax], edx
cmp dword [esp + 0x30], 0
je 0x44497a
mov eax, dword [esp + 0x28]
imul eax, dword [esp + 0x20]
xor edx, edx
div dword [esp + 0x2c]
mov edx, eax
mov eax, 0xdee95c4d
mul edx
mov eax, dword [esp + 0x30]
shr edx, 0xb
mov dword [eax], edx
cmp dword [esp + 0x40], 0
je 0x4449b1
mov eax, dword [esp + 0x78]
xor edx, edx
movzx edi, di
div edi
xor edx, edx
movzx ecx, cx
shr eax, 3
imul eax, eax, 0x3e8
div esi
xor edx, edx
imul eax, dword [esp + 0x20]
div ecx
xor edx, edx
div dword [esp + 0x2c]
mov edx, dword [esp + 0x40]
mov dword [edx], eax
mov eax, dword [esp + 0x10]
push eax
call fcn.0042bf40
add esp, 4
xor edi, edi
jmp 0x443d87