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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x288
mov bl, byte [ebp + 0x10]
lea eax, [ebp + 0xc]
mov dword [esp + 0x1c], eax
lea eax, [esp + 0xf4]
push 0x190
push 0
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_memset
add esp, 0xc
mov dword [esp + 0xbc], 0
mov byte [esp + 0x2f], 0
mov byte [esp + 0x2e], 0
mov dword [esp + 0xac], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xb0], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc8], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x8c], 0x494b80
mov dword [esp + 0x90], 0x58a680
mov dword [esp + 0x94], ebp
mov dword [esp + 0x9c], esp
mov dword [esp + 0x98], 0x45157b
mov dword [esp + 0x78], 1
lea eax, [esp + 0x74]
push eax
call fcn.00495b60
add esp, 4
lea esi, [esp + 0x50]
lea ecx, [esp + 0x60]
movzx edx, bl
lea edi, [esp + 0xa8]
lea eax, [esp + 0xbc]
lea ebx, [esp + 0x70]
push ebx
push esi
push ecx
lea ecx, [esp + 0x4c]
push ecx
push edi
lea ecx, [esp + 0x42]
push ecx
lea ecx, [esp + 0x47]
push ecx
push eax
push dword [ebp + 0x14]
push edx
call fcn.00451bf0
add esp, 0x28
mov ecx, dword [ebp + 0x18]
mov eax, dword [ebp + 0x28]
mov edx, dword [ebp + 0x2c]
mov eax, dword [eax]
mov dword [edx], eax
shr ecx, 9
and ecx, 1
mov dword [esp + 0xe4], ecx
mov eax, dword [ebp + 0x30]
mov dword [esp + 0xb8], eax
lea edx, [esp + 0xf4]
lea eax, [esp + 0x284]
mov dword [esp + 0x6c], eax
mov ecx, 0x424520
mov dword [esp + 0x24], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], edx
jmp 0x450146
mov ebx, dword [esp]
mov eax, dword [esp + 0x1c]
mov dword [eax], ebx
mov eax, dword [ebp + 0x2c]
mov eax, dword [eax]
mov ecx, dword [ebp + 0x28]
cmp eax, dword [ecx]
mov esi, dword [esp + 0x34]
mov edx, dword [esp + 0x34]
mov edi, dword [esp + 0x38]
mov ecx, dword [esp + 0x38]
je 0x451172
nop word cs:[eax + eax]
nop dword [eax]
mov esi, dword [esp + 0x24]
add esi, 1
mov eax, esi
mov dword [esp + 0x24], esi
cmp esi, 4
je 0x45113c
mov dword [esp + 8], edx
mov dword [esp + 4], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov esi, 0
test ecx, ecx
je 0x4501a0
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
je 0x450170
mov esi, ecx
jmp 0x4501a0
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x78], 2
call eax
cmp eax, 0xffffffff
je 0x45018b
mov eax, dword [ebp + 8]
mov esi, dword [eax]
jmp 0x4501a0
mov eax, dword [ebp + 8]
mov dword [eax], 0
xor esi, esi
nop word cs:[eax + eax]
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax]
test ecx, ecx
je 0x4501f0
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
mov dword [esp], ecx
jne 0x4501d1
mov dword [esp + 0xc], esi
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x78], 3
call eax
cmp eax, 0xffffffff
mov esi, dword [esp + 0xc]
je 0x4501e2
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
test esi, esi
je 0x450207
jmp 0x45113c
mov eax, dword [esp + 0x1c]
mov dword [eax], 0
nop dword [eax]
mov dword [esp], 0
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
test esi, esi
je 0x45113c
mov eax, dword [esp + 0x24]
movsx eax, byte [esp + eax + 0xbc]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
cmp eax, 4
ja case.default.0x450224
jmp dword [eax*4 + 0x451768]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
cmp dword [esp + 0x24], 3
jne 0x450771
jmp 0x45113c
mov edi, dword [esp + 4]
mov dword [esp], 0
mov edx, dword [esp + 8]
jmp 0x450266
add eax, 1
mov dword [ecx + 0xc], eax
mov dword [esp + 0x28], edi
mov dword [esp + 0x20], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov edx, 0
test ecx, ecx
je 0x4502d0
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
je 0x450290
mov edx, ecx
jmp 0x4502d0
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov edx, dword [esp + 0x20]
mov esi, dword [esp + 0x28]
mov dword [esp + 0xd0], edx
mov dword [esp + 0xd4], esi
mov dword [esp + 0x78], 0x18
call eax
cmp eax, 0xffffffff
je 0x4502c1
mov eax, dword [ebp + 8]
mov edx, dword [eax]
jmp 0x4502d0
mov eax, dword [ebp + 8]
mov dword [eax], 0
xor edx, edx
nop dword [eax]
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax]
test ecx, ecx
je 0x450330
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
jne 0x450314
mov dword [esp + 0xc], edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov edx, dword [esp + 0x20]
mov esi, dword [esp + 0x28]
mov dword [esp + 0xd0], edx
mov dword [esp + 0xd4], esi
mov dword [esp + 0x78], 0x19
call eax
cmp eax, 0xffffffff
mov edx, dword [esp + 0xc]
je 0x45031d
test edx, edx
je 0x450338
jmp 0x4505da
mov eax, dword [esp + 0x1c]
mov dword [eax], 0
nop word [eax + eax]
test edx, edx
je 0x4505da
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
je 0x450350
movzx ebx, byte [eax]
test bl, bl
jns 0x450365
jmp 0x450378
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x78], 0x1a
call eax
mov ebx, eax
test bl, bl
js 0x450378
movzx eax, bl
mov ecx, dword [ebp + 0x24]
mov ecx, dword [ecx + 8]
test byte [ecx + eax*2], 4
jne 0x450420
movzx eax, byte [esp + 0xa8]
test al, 1
je 0x4503a0
mov eax, dword [esp + 0xac]
test eax, eax
jne 0x4503aa
jmp 0x4505da
shr eax, 1
test eax, eax
je 0x4505da
cmp dword [esp], 0
je 0x4505da
cmp byte [esp + 0x2e], bl
jne 0x4505da
mov edx, dword [esp + 0x20]
mov edi, dword [esp + 0x28]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x6c]
cmp eax, ecx
jne 0x4504a1
mov eax, dword [esp + 0x28]
sub ecx, dword [esp + 0x20]
lea esi, [ecx + ecx]
test ecx, ecx
mov edx, ecx
mov ecx, 4
cmove esi, ecx
mov edi, edx
cmp edx, 0x7fffffff
mov ecx, 0xffffffff
cmovae esi, ecx
cmp eax, 0x424520
je 0x45047c
push esi
push dword [esp + 0x24]
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
add esp, 8
jmp 0x450485
mov eax, dword [ebp + 0x2c]
mov eax, dword [eax]
mov ecx, dword [esp + 0xb8]
cmp eax, ecx
je 0x450438
mov edx, dword [ebp + 0x2c]
jmp 0x4504e5
mov eax, dword [ebp + 0x28]
mov edx, ecx
mov ecx, eax
mov eax, dword [eax]
sub edx, eax
lea esi, [edx + edx]
test edx, edx
mov edi, 1
cmove esi, edi
mov edi, edx
cmp edx, 0x7fffffff
mov edx, 0xffffffff
cmovae esi, edx
cmp dword [ecx + 4], 0x424520
je 0x4504b6
push esi
push eax
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
add esp, 8
test eax, eax
jne 0x4504c7
jmp 0x451522
push esi
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
add esp, 4
mov edx, eax
test eax, eax
je 0x451515
and esi, 0xfffffffc
mov eax, edi
add eax, edx
add esi, edx
mov edi, fcn.00496000
mov dword [esp + 0x6c], esi
mov ecx, dword [esp]
mov dword [eax], ecx
add eax, 4
mov dword [esp + 0x10], eax
mov dword [esp], 0
jmp 0x4504f8
push esi
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
add esp, 4
test eax, eax
je 0x451522
mov ecx, dword [ebp + 0x28]
mov dword [ecx], eax
mov dword [ecx + 4], fcn.00496000
add edi, eax
mov edx, dword [ebp + 0x2c]
mov dword [edx], edi
add esi, dword [ecx]
mov eax, edi
mov dword [esp + 0xb8], esi
lea ecx, [eax + 1]
mov dword [edx], ecx
mov byte [eax], bl
add dword [esp], 1
mov edx, dword [esp + 0x20]
mov edi, dword [esp + 0x28]
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
jne 0x450260
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
mov dword [esp + 0xd0], edx
mov dword [esp + 0xd4], edi
mov dword [esp + 0x78], 0x1d
mov dword [esp + 0xc], edx
mov dword [esp + 0x3c], edi
call eax
mov edi, dword [esp + 0x3c]
mov edx, dword [esp + 0xc]
jmp 0x450266
cmp dword [esp + 0x14], 0
jne 0x450619
cmp dword [esp + 0x24], 2
jb 0x450619
sete al
cmp byte [esp + 0xbf], 0
setne ah
and ah, al
or ah, byte [esp + 0xe4]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
cmp ah, 1
jne 0x4508a1
mov dh, byte [esp + 0x40]
test dh, 1
sete dl
mov eax, dword [esp + 0x48]
mov edi, eax
lea ecx, [esp + 0x41]
cmove edi, ecx
jmp 0x45063b
movzx ecx, byte [esp + 0x60]
mov bh, cl
and bh, 1
je 0x45066a
mov eax, dword [esp + 0x64]
jmp 0x45066e
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
cmp dword [esp + 0x24], 3
je 0x45113c
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
je 0x4506c8
movzx eax, byte [eax]
jmp 0x4506d7
mov eax, dword [esp + 0x10]
cmp eax, dword [esp + 0x20]
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
je 0x450abd
cmp dword [esp], 0
je 0x450abd
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x6c]
cmp dword [esp + 0x10], edx
je 0x4508c7
mov edx, dword [esp + 0x10]
jmp 0x450ab1
mov dh, byte [esp + 0x40]
test dh, 1
sete dl
mov eax, dword [esp + 0x48]
mov edi, eax
lea ecx, [esp + 0x41]
cmove edi, ecx
cmp dword [esp + 0x24], 0
je 0x450e15
lea ecx, [esp + 0xbc]
mov esi, dword [esp + 0x24]
cmp byte [esi + ecx - 1], 1
ja 0x450e15
test dl, dl
mov dword [esp + 0xc], eax
mov byte [esp + 0x3c], dh
jne 0x450911
mov esi, dword [esp + 0x44]
jmp 0x450918
mov eax, ecx
shr eax, 1
movzx edx, byte [esp + 0x50]
mov bl, dl
and bl, 1
mov dword [esp], ecx
mov dword [esp + 0xc], edx
je 0x450687
mov edi, dword [esp + 0x54]
jmp 0x45068b
mov edi, edx
shr edi, 1
mov esi, eax
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
add esi, edi
je case.default.0x450224
test eax, eax
je 0x4508ae
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 0xc]
mov edx, dword [ecx + 0x10]
test edi, edi
je 0x4509bb
cmp eax, edx
je 0x4509ce
movzx edx, byte [eax]
jmp 0x4509eb
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x78], 4
call eax
mov edi, dword [esp + 4]
mov esi, dword [esp + 8]
test al, 0x80
jne 0x451172
movzx eax, al
mov ecx, dword [ebp + 0x24]
mov ecx, dword [ecx + 8]
movzx eax, word [ecx + eax*2]
mov edi, dword [esp + 4]
mov esi, dword [esp + 8]
test al, 8
je 0x451172
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
je 0x45071c
lea edx, [eax + 1]
mov dword [ecx + 0xc], edx
movzx eax, byte [eax]
jmp 0x45072b
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
mov dword [esp + 0x78], 5
call eax
mov dword [esp + 0x78], 6
movsx eax, al
lea ecx, [esp + 0xc0]
push eax
call fcn.0041e3d0
jmp 0x450771
lea edx, [eax + 1]
mov dword [ecx + 0xc], edx
movzx eax, byte [eax]
mov dword [esp + 0x78], 0xb
movsx eax, al
lea ecx, [esp + 0xc0]
push eax
call fcn.0041e3d0
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
xor esi, esi
test ecx, ecx
je 0x4507b0
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
je 0x450790
mov esi, ecx
jmp 0x4507b0
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x78], 7
call eax
cmp eax, 0xffffffff
je 0x4507ec
mov eax, dword [ebp + 8]
mov esi, dword [eax]
nop dword [eax]
mov ecx, dword [esp]
test ecx, ecx
je 0x450810
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
jne 0x4507db
mov dword [esp + 0xc], esi
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x78], 8
call eax
cmp eax, 0xffffffff
mov esi, dword [esp + 0xc]
je 0x450800
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
test esi, esi
je 0x450827
jmp case.default.0x450224
mov eax, dword [ebp + 8]
mov dword [eax], 0
mov ecx, dword [esp]
xor esi, esi
test ecx, ecx
jne 0x4507b7
jmp 0x450810
mov eax, dword [esp + 0x1c]
mov dword [eax], 0
nop word [eax + eax]
mov dword [esp], 0
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
test esi, esi
je case.default.0x450224
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
je 0x450840
movzx eax, byte [eax]
jmp 0x45084f
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x78], 9
call eax
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
test al, 0x80
jne case.default.0x450224
movzx eax, al
mov ecx, dword [ebp + 0x24]
mov ecx, dword [ecx + 8]
movzx eax, word [ecx + eax*2]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
test al, 8
je case.default.0x450224
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
jne 0x450750
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
mov dword [esp + 0x78], 0xa
call eax
jmp 0x450759
mov dword [esp + 0x14], 0
jmp case.default.0x450224
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov edx, dword [ecx + 0xc]
cmp edx, dword [ecx + 0x10]
je 0x450a34
movzx ecx, byte [edx]
jmp 0x450a52
mov eax, dword [esp + 0x28]
sub edx, dword [esp + 0x20]
lea esi, [edx + edx]
test edx, edx
mov ecx, 4
cmove esi, ecx
mov edi, edx
cmp edx, 0x7fffffff
mov ecx, 0xffffffff
cmovae esi, ecx
cmp eax, 0x424520
je 0x450a8e
push esi
push dword [esp + 0x24]
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
add esp, 8
test eax, eax
jne 0x450a9f
jmp 0x451558
mov cl, dh
shr cl, 1
movzx esi, cl
mov edx, edi
test esi, esi
je 0x450949
mov edx, edi
add edi, esi
mov ecx, dword [ebp + 0x24]
mov ebx, dword [ecx + 8]
mov eax, edx
nop word [eax + eax]
movzx ecx, byte [edx]
test cl, cl
js 0x450947
test byte [ebx + ecx*2], 8
je 0x450947
add edx, 1
add esi, 0xffffffff
jne 0x450930
mov edx, edi
mov edi, eax
mov esi, edx
sub esi, edi
movzx ecx, byte [esp + 0xc0]
test cl, 1
je 0x45096a
mov ebx, dword [esp + 0xc4]
cmp esi, ebx
jbe 0x450976
jmp 0x450e0d
mov ebx, ecx
shr ebx, 1
cmp esi, ebx
ja 0x450e0d
mov eax, edi
lea edi, [esp + 0xc1]
test cl, 1
je 0x45098b
mov edi, dword [esp + 0xc8]
test esi, esi
je 0x4509b4
add edi, ebx
sub edi, esi
xor ecx, ecx
nop word cs:[eax + eax]
nop
movzx ebx, byte [edi + ecx]
cmp bl, byte [eax + ecx]
jne 0x450e0b
add ecx, 1
cmp esi, ecx
jne 0x4509a0
mov edi, edx
jmp 0x450e0d
cmp eax, edx
je 0x450fb1
movzx ecx, byte [eax]
mov edx, dword [esp]
jmp 0x450fcb
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x78], 0x10
call eax
mov edx, eax
mov al, byte [esp + 0x60]
mov dword [esp], eax
mov bh, al
and bh, 1
lea esi, [esp + 0x61]
test bh, bh
je 0x4509f7
mov esi, dword [esp + 0x68]
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 0xc]
mov edi, dword [ecx + 0x10]
cmp byte [esi], dl
jne 0x450a24
cmp eax, edi
je 0x45100a
add eax, 1
mov dword [ecx + 0xc], eax
mov eax, dword [esp]
test bh, bh
je 0x45102a
jmp 0x451112
cmp eax, edi
je 0x451034
movzx eax, byte [eax]
jmp 0x451043
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x78], 0xe
call eax
mov ecx, eax
mov al, byte [esp + 0x50]
mov dword [esp + 0xc], eax
mov ebx, eax
and bl, 1
lea edx, [esp + 0x51]
test bl, bl
je 0x450a5e
mov edx, dword [esp + 0x58]
cmp byte [edx], cl
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
jne case.default.0x450224
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov edx, dword [ecx + 0xc]
cmp edx, dword [ecx + 0x10]
je 0x4510bc
add edx, 1
mov dword [ecx + 0xc], edx
mov ecx, dword [esp + 0xc]
jmp 0x4510d4
push esi
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
add esp, 4
test eax, eax
je 0x451558
and esi, 0xfffffffc
mov edx, edi
add edx, eax
add esi, eax
mov ecx, fcn.00496000
mov dword [esp + 0x6c], esi
mov esi, dword [esp]
mov dword [edx], esi
add edx, 4
mov dword [esp + 0x10], edx
mov dword [esp + 0x38], ecx
mov dword [esp + 0x34], eax
cmp dword [esp + 0x70], 0
jle 0x450102
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
xor ebx, ebx
test ecx, ecx
je 0x450b0d
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
je 0x450ae7
mov ebx, ecx
jmp 0x450b0d
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x78], 0x1f
call eax
cmp eax, 0xffffffff
je 0x450b02
mov eax, dword [ebp + 8]
mov ebx, dword [eax]
jmp 0x450b0d
mov eax, dword [ebp + 8]
mov dword [eax], 0
xor ebx, ebx
mov eax, dword [esp + 0x1c]
mov edx, dword [eax]
test edx, edx
je 0x450b5e
mov eax, dword [edx + 0xc]
cmp eax, dword [edx + 0x10]
jne 0x450b43
mov dword [esp + 0xc], ebx
mov eax, dword [edx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x78], 0x20
mov dword [esp], edx
mov ecx, edx
call eax
cmp eax, 0xffffffff
mov edx, dword [esp]
mov ebx, dword [esp + 0xc]
je 0x450b54
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x38]
test ebx, ebx
je 0x450b70
jmp 0x451172
mov eax, dword [esp + 0x1c]
mov dword [eax], 0
xor edx, edx
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x38]
test ebx, ebx
je 0x451172
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
mov dword [esp], edx
je 0x450b85
movzx eax, byte [eax]
jmp 0x450b94
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x78], 0x21
call eax
cmp byte [esp + 0x2f], al
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x38]
jne 0x451172
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
je 0x450bbb
add eax, 1
mov dword [ecx + 0xc], eax
jmp 0x450bca
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
mov dword [esp + 0x78], 0x22
call eax
cmp dword [esp + 0x70], 0
jle 0x4500f9
mov ebx, dword [esp]
jmp 0x450bee
add edx, 1
mov dword [ecx + 0xc], edx
test eax, eax
jle 0x4500fc
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
xor edx, edx
test ecx, ecx
je 0x450c40
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
je 0x450c10
mov edx, ecx
test ebx, ebx
jne 0x450c44
jmp 0x450ca0
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp], ebx
mov dword [esp + 0xb4], ebx
mov dword [esp + 0x78], 0x23
call eax
cmp eax, 0xffffffff
je 0x450c80
mov eax, dword [ebp + 8]
mov edx, dword [eax]
mov ebx, dword [esp]
nop word cs:[eax + eax]
test ebx, ebx
je 0x450ca0
mov eax, dword [ebx + 0xc]
cmp eax, dword [ebx + 0x10]
jne 0x450c77
mov dword [esp + 0xc], edx
mov eax, dword [ebx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0xb4], ebx
mov dword [esp + 0x78], 0x24
mov dword [esp], ebx
mov ecx, ebx
call eax
cmp eax, 0xffffffff
mov ebx, dword [esp]
mov edx, dword [esp + 0xc]
je 0x450ca0
test edx, edx
je 0x450caa
jmp 0x451164
mov eax, dword [ebp + 8]
mov dword [eax], 0
mov ebx, dword [esp]
xor edx, edx
test ebx, ebx
jne 0x450c44
nop word cs:[eax + eax]
nop dword [eax]
xor ebx, ebx
test edx, edx
je 0x451164
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
mov dword [esp], ebx
je 0x450cd0
movzx eax, byte [eax]
test al, 0x80
je 0x450cf1
jmp 0x451164
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0xb4], ebx
mov dword [esp + 0x78], 0x25
call eax
mov ebx, dword [esp]
test al, 0x80
jne 0x451164
movzx eax, al
mov ecx, dword [ebp + 0x24]
mov ecx, dword [ecx + 8]
test byte [ecx + eax*2], 4
je 0x451164
mov eax, dword [ebp + 0x2c]
mov edx, dword [eax]
mov ecx, dword [esp + 0xb8]
cmp edx, ecx
jne 0x450d87
mov eax, dword [ebp + 0x28]
mov edx, ecx
mov ecx, eax
mov eax, dword [eax]
sub edx, eax
lea esi, [edx + edx]
test edx, edx
mov edi, 1
cmove esi, edi
mov edi, edx
cmp edx, 0x7fffffff
mov edx, 0xffffffff
cmovae esi, edx
cmp dword [ecx + 4], 0x424520
je 0x450d58
push esi
push eax
call sub.api_ms_win_crt_heap_l1_1_0.dll_realloc
add esp, 8
test eax, eax
jne 0x450d69
jmp 0x45152f
push esi
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
add esp, 4
test eax, eax
je 0x45152f
mov ecx, dword [ebp + 0x28]
mov dword [ecx], eax
mov dword [ecx + 4], fcn.00496000
mov edx, edi
add edx, eax
mov eax, dword [ebp + 0x2c]
mov dword [eax], edx
add esi, dword [ecx]
mov dword [esp + 0xb8], esi
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
je 0x450da0
movzx eax, byte [eax]
mov esi, dword [ebp + 0x2c]
jmp 0x450dbe
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0xb4], ebx
mov dword [esp + 0x78], 0x27
call eax
mov esi, dword [ebp + 0x2c]
mov edx, dword [esi]
mov ebx, dword [esp]
lea ecx, [edx + 1]
mov dword [esi], ecx
mov byte [edx], al
mov eax, dword [esp + 0x70]
add eax, 0xffffffff
mov dword [esp + 0x70], eax
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx]
mov edx, dword [ecx + 0xc]
cmp edx, dword [ecx + 0x10]
jne 0x450be0
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
mov dword [esp + 0xb4], ebx
mov dword [esp + 0x78], 0x28
call eax
mov eax, dword [esp + 0x70]
mov ebx, dword [esp]
test eax, eax
jg 0x450bee
jmp 0x4500fc
mov edi, eax
mov eax, dword [esp + 0xc]
mov dh, byte [esp + 0x3c]
mov cl, dh
shr cl, 1
test dh, 1
movzx ecx, cl
cmovne ecx, dword [esp + 0x44]
lea edx, [esp + 0x41]
cmove eax, edx
jmp 0x450e38
mov ecx, dword [esp + 0x48]
mov eax, dword [esp + 0x44]
add ecx, eax
cmp edi, ecx
je 0x450f5e
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
xor edx, edx
test ecx, ecx
mov dword [esp + 0xc], edi
je 0x450e80
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
je 0x450e60
mov edx, ecx
jmp 0x450e80
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x78], 0x14
call eax
mov edi, dword [esp + 0xc]
cmp eax, 0xffffffff
je 0x450ebb
mov eax, dword [ebp + 8]
mov edx, dword [eax]
nop dword [eax]
mov ecx, dword [esp]
test ecx, ecx
je 0x450ee0
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
jne 0x450eb2
mov dword [esp + 0x3c], edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x78], 0x15
call eax
mov edi, dword [esp + 0xc]
cmp eax, 0xffffffff
mov ecx, dword [esp]
mov edx, dword [esp + 0x3c]
je 0x450ecf
test edx, edx
je 0x450ee6
jmp 0x450f5e
mov eax, dword [ebp + 8]
mov dword [eax], 0
mov ecx, dword [esp]
xor edx, edx
test ecx, ecx
jne 0x450e87
jmp 0x450ee0
mov eax, dword [esp + 0x1c]
mov dword [eax], 0
nop dword [eax]
xor ecx, ecx
test edx, edx
je 0x450f5e
mov dword [esp], ecx
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
je 0x450f00
movzx eax, byte [eax]
jmp 0x450f13
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x78], 0x16
call eax
mov edi, dword [esp + 0xc]
cmp byte [edi], al
jne 0x450f5e
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
je 0x450f30
add eax, 1
mov dword [ecx + 0xc], eax
jmp 0x450f43
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
mov dword [esp + 0x78], 0x17
call eax
mov edi, dword [esp + 0xc]
add edi, 1
movzx eax, byte [esp + 0x40]
test al, 1
jne 0x450e30
shr eax, 1
lea ecx, [esp + 0x41]
jmp 0x450e38
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
test dword [ebp + 0x18], 0x200
je case.default.0x450224
movzx eax, byte [esp + 0x40]
test al, 1
mov dword [esp + 0xc], edi
je 0x450f8a
mov ebx, dword [esp + 0x48]
mov eax, dword [esp + 0x44]
jmp 0x450f90
shr eax, 1
lea ebx, [esp + 0x41]
add ebx, eax
mov edi, dword [esp + 4]
mov ecx, dword [esp + 4]
mov esi, dword [esp + 8]
mov edx, dword [esp + 8]
cmp dword [esp + 0xc], ebx
je case.default.0x450224
jmp 0x451172
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x78], 0xc
call eax
mov ecx, eax
mov dl, byte [esp + 0x60]
mov bh, dl
and bh, 1
lea eax, [esp + 0x61]
test bh, bh
je 0x450fd7
mov eax, dword [esp + 0x68]
cmp byte [eax], cl
jne 0x450fff
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
je 0x4510f6
add eax, 1
mov dword [ecx + 0xc], eax
test bh, bh
jne 0x451112
jmp 0x451118
mov eax, dword [ebp + 0x20]
mov byte [eax], 1
jmp 0x45112f
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
mov dword [esp + 0x78], 0x11
call eax
mov al, byte [esp + 0x60]
mov bh, al
and bh, 1
test bh, bh
jne 0x451112
shr al, 1
movzx eax, al
jmp 0x45111d
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x78], 0x12
call eax
mov dl, byte [esp + 0x50]
mov dh, dl
lea ecx, [esp + 0x51]
and dh, 1
je 0x451056
mov ecx, dword [esp + 0x58]
cmp byte [ecx], al
mov edi, dword [esp + 4]
mov esi, dword [esp + 8]
jne 0x451172
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
je 0x45107b
add eax, 1
mov dword [ecx + 0xc], eax
jmp 0x451093
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
mov dword [esp + 0x78], 0x13
call eax
mov dl, byte [esp + 0x50]
mov dh, dl
and dh, 1
mov eax, dword [ebp + 0x20]
mov byte [eax], 1
test dh, dh
je 0x4510a3
mov eax, dword [esp + 0x54]
jmp 0x4510a8
shr dl, 1
movzx eax, dl
cmp eax, 2
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x50]
cmovae eax, ecx
mov dword [esp + 0x14], eax
jmp 0x45112f
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
mov dword [esp + 0x78], 0xf
call eax
mov cl, byte [esp + 0x50]
mov ebx, ecx
and bl, 1
mov eax, dword [ebp + 0x20]
mov byte [eax], 1
test bl, bl
je 0x4510e4
mov eax, dword [esp + 0x54]
jmp 0x4510e9
shr cl, 1
movzx eax, cl
mov ecx, dword [esp + 0x14]
cmp eax, 2
lea eax, [esp + 0x50]
jmp 0x451128
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
mov dword [esp + 0x78], 0xd
call eax
mov dl, byte [esp + 0x60]
mov bh, dl
and bh, 1
test bh, bh
je 0x451118
mov eax, dword [esp + 0x64]
jmp 0x45111d
shr dl, 1
movzx eax, dl
mov ecx, dword [esp + 0x14]
cmp eax, 2
lea eax, [esp + 0x60]
cmovae ecx, eax
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 4]
mov edx, dword [esp + 8]
jmp case.default.0x450224
mov dword [esp + 0x30], ecx
mov dword [esp + 0x18], edx
mov ecx, dword [esp + 0x14]
test ecx, ecx
je 0x45130e
movzx eax, byte [ecx]
test al, 1
je 0x45118a
mov eax, dword [ecx + 4]
cmp eax, 2
jae 0x451195
jmp 0x45130e
mov eax, dword [esp + 0x1c]
mov dword [eax], ebx
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x38]
mov eax, dword [ebp + 0x1c]
or byte [eax], 4
mov dword [esp], 0
mov dword [esp + 0x10], esi
mov ebx, edi
jmp 0x45145e
shr eax, 1
cmp eax, 2
jb 0x45130e
lea eax, [ecx + 1]
mov dword [esp + 0x24], eax
mov ebx, 1
jmp 0x4511bb
mov eax, dword [ecx + 4]
cmp ebx, eax
jae 0x45130e
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
xor edx, edx
test ecx, ecx
mov dword [esp], ebx
je 0x451210
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
je 0x4511e0
mov edx, ecx
jmp 0x451210
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x78], 0x29
call eax
mov ebx, dword [esp]
cmp eax, 0xffffffff
je 0x4511fe
mov eax, dword [ebp + 8]
mov edx, dword [eax]
jmp 0x451210
mov eax, dword [ebp + 8]
mov dword [eax], 0
xor edx, edx
nop dword [eax]
mov eax, dword [esp + 0x1c]
mov ecx, dword [eax]
test ecx, ecx
je 0x451260
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
jne 0x451241
mov dword [esp + 0x6c], edx
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x78], 0x2a
call eax
mov ebx, dword [esp]
cmp eax, 0xffffffff
mov edx, dword [esp + 0x6c]
je 0x451252
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x30]
test edx, edx
je 0x451270
jmp 0x451172
mov eax, dword [esp + 0x1c]
mov dword [eax], 0
nop dword [eax]
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x30]
test edx, edx
je 0x451172
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
je 0x451290
movzx eax, byte [eax]
jmp 0x4512a2
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
mov dword [esp + 0x78], 0x2b
call eax
mov ebx, dword [esp]
mov edx, dword [esp + 0x14]
test byte [edx], 1
mov ecx, dword [esp + 0x24]
je 0x4512b2
mov ecx, dword [edx + 8]
cmp byte [ecx + ebx], al
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x30]
jne 0x451172
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
mov eax, dword [ecx + 0xc]
cmp eax, dword [ecx + 0x10]
je 0x4512e0
add eax, 1
mov dword [ecx + 0xc], eax
jmp 0x4512f2
mov eax, dword [ecx]
mov eax, dword [eax + 0x28]
mov dword [esp + 0x78], 0x2c
call eax
mov ebx, dword [esp]
add ebx, 1
mov ecx, dword [esp + 0x14]
movzx eax, byte [ecx]
test al, 1
jne 0x4511b0
shr eax, 1
cmp ebx, eax
jb 0x4511bb
mov eax, dword [esp + 0x10]
cmp eax, dword [esp + 0x18]
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x30]
je 0x45133a
mov al, 1
mov dword [esp], eax
movzx eax, byte [esp + 0xa8]
test al, 1
je 0x451348
mov ecx, dword [esp + 0xac]
jmp 0x45134c
mov dword [esp + 0x10], eax
mov al, 1
mov dword [esp], eax
jmp 0x45145e
mov ecx, eax
shr ecx, 1
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x30]
test ecx, ecx
je 0x45145a
mov ecx, dword [esp + 0x10]
add ecx, 0xfffffffc
cmp ecx, dword [esp + 0x18]
mov dword [esp + 0x10], ecx
jbe 0x4513b3
mov eax, dword [esp + 0x18]
add eax, 4
nop word cs:[eax + eax]
nop
mov edx, dword [eax - 4]
mov esi, dword [ecx]
mov dword [eax - 4], esi
mov dword [ecx], edx
add ecx, 0xfffffffc
lea edx, [eax + 4]
cmp eax, ecx
mov eax, edx
jb 0x451380
movzx edx, byte [esp + 0xa8]
test dl, 1
je 0x4513c0
mov eax, dword [esp + 0xb0]
mov edx, dword [esp + 0xac]
jmp 0x4513c9
test al, 1
je 0x451417
mov eax, dword [esp + 0xb0]
jmp 0x45141e
shr edx, 1
lea eax, [esp + 0xa9]
mov ecx, dword [esp + 0x10]
cmp ecx, dword [esp + 0x18]
jbe 0x45141e
add edx, eax
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x18]
jmp 0x4513f9
mov ecx, dword [esp + 0x24]
sub ecx, eax
xor ebx, ebx
cmp ecx, 2
setge bl
add eax, ebx
add edx, 4
cmp edx, dword [esp + 0x10]
jae 0x45141e
movzx ebx, byte [eax]
mov ecx, ebx
add cl, 0xff
cmp cl, 0x7d
ja 0x4513e0
cmp dword [edx], ebx
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x30]
je 0x4513e0
jmp 0x451172
lea eax, [esp + 0xa9]
movzx eax, byte [eax]
mov ecx, eax
add cl, 0xff
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x30]
cmp cl, 0x7d
ja 0x45145a
mov ecx, dword [esp + 0x10]
mov ecx, dword [ecx]
add ecx, 0xffffffff
mov esi, dword [esp + 0x18]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x10], edx
mov edi, dword [esp + 0x30]
mov ebx, dword [esp + 0x30]
cmp ecx, eax
jae 0x451172
jmp 0x45145e
mov dword [esp + 0x10], edx
test byte [esp + 0xc0], 1
je 0x451477
push dword [esp + 0xc8]
call fcn.0041a380
add esp, 4
test byte [esp + 0x50], 1
mov edi, dword [esp + 0x10]
jne 0x4514a0
test byte [esp + 0x60], 1
jne 0x4514b3
test byte [esp + 0x40], 1
jne 0x4514c6
test byte [esp + 0xa8], 1
jne 0x4514dc
test edi, edi
jne 0x4514ef
jmp 0x4514fd
push dword [esp + 0x58]
call fcn.0041a380
add esp, 4
test byte [esp + 0x60], 1
je 0x451489
push dword [esp + 0x68]
call fcn.0041a380
add esp, 4
test byte [esp + 0x40], 1
je 0x451490
push dword [esp + 0x48]
call fcn.0041a380
add esp, 4
test byte [esp + 0xa8], 1
je 0x45149a
push dword [esp + 0xb0]
call fcn.0041a380
add esp, 4
test edi, edi
je 0x4514fd
mov dword [esp + 0x78], 0x2d
push edi
call ebx
add esp, 4
lea eax, [esp + 0x74]
push eax
call fcn.00495bc0
add esp, 4
mov eax, dword [esp]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esp + 0x78], 0x1c
call fcn.0041a1b0
mov dword [esp + 0x78], 0x1b
call fcn.0041a1b0
mov eax, dword [esp + 0x1c]
mov dword [eax], ebx
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0xdc], eax
mov dword [esp + 0xe0], ecx
mov dword [esp + 0x78], 0x26
call fcn.0041a1b0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0xdc], eax
mov dword [esp + 0xe0], ecx
mov dword [esp + 0x78], 0x1e
call fcn.0041a1b0
mov eax, dword [esp + 0x78]
cmp eax, 0x2e
jae case.default.0x45158a
jmp dword [eax*4 + 0x45177c]
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x80]
mov edx, 0x424520
lea esi, [esp + 0xf4]
jmp 0x45165b
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x80]
jmp 0x4515d4
jmp case.0x45158a.22
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0xb4]
mov esi, dword [esp + 0x1c]
mov dword [esi], edx
mov esi, dword [esp + 0x34]
mov edx, dword [esp + 0x38]
jmp 0x45165b
jmp case.0x45158a.25
jmp case.0x45158a.22
jmp case.0x45158a.22
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0xd4]
mov esi, dword [esp + 0xd0]
jmp 0x45165b
jmp case.0x45158a.22
jmp case.0x45158a.22
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x80]
mov esi, dword [esp + 0x18]
mov edx, dword [esp + 0x30]
jmp 0x45165b
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 4]
mov esi, dword [esp + 8]
jmp 0x45165b
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0xe0]
mov esi, dword [esp + 0xdc]
jmp 0x45165b
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x80]
mov esi, dword [esp + 0x20]
mov edx, dword [esp + 0x28]
mov dword [esp + 0xec], eax
mov dword [esp + 0xf0], ecx
mov dword [esp + 0xe8], edx
mov dword [esp + 0xd8], esi
test byte [esp + 0xc0], 1
jne 0x4516b0
test byte [esp + 0x50], 1
jne 0x4516c6
test byte [esp + 0x60], 1
jne 0x4516d9
test byte [esp + 0x40], 1
jne 0x4516ec
test byte [esp + 0xa8], 1
jne 0x451702
cmp dword [esp + 0xd8], 0
je 0x451737
jmp 0x45171b
push dword [esp + 0xc8]
call fcn.0041a380
add esp, 4
test byte [esp + 0x50], 1
je 0x451688
push dword [esp + 0x58]
call fcn.0041a380
add esp, 4
test byte [esp + 0x60], 1
je 0x45168f
push dword [esp + 0x68]
call fcn.0041a380
add esp, 4
test byte [esp + 0x40], 1
je 0x451696
push dword [esp + 0x48]
call fcn.0041a380
add esp, 4
test byte [esp + 0xa8], 1
je 0x4516a0
push dword [esp + 0xb0]
call fcn.0041a380
add esp, 4
cmp dword [esp + 0xd8], 0
je 0x451737
mov eax, dword [esp + 0xd8]
mov ecx, dword [esp + 0xe8]
mov dword [esp + 0x78], 0x2e
push eax
call ecx
add esp, 4
mov eax, dword [esp + 0xec]
mov ecx, dword [esp + 0xf0]
mov dword [esp + 0x78], 0xffffffff
push eax
call fcn.00495e60
ud2
jmp case.0x45158a.44
mov eax, dword [esp + 0x80]
push dword [esp + 0x7c]
call fcn.0041a6c0
nop
sub eax, dword [edx]
inc ebp
add byte [esi + 0x3b004505], ch
add eax, 0x5950045
inc ebp
add byte [ebx + 2], al
inc ebp
add byte [ecx - 0xffbaeb], dl
adc eax, 0x15ff0045
inc ebp
add bh, bh
adc eax, 0x15e00045
inc ebp
add al, ah
adc eax, 0x15e20045
inc ebp
add dl, ah
adc eax, 0x15e20045
inc ebp
add byte [edx - 0x45ffbaeb], bh
adc eax, 0x15ff0045
inc ebp
add bh, bh
adc eax, 0x15ff0045
inc ebp
add bh, bh
adc eax, 0x15ff0045
inc ebp
add bh, bh
adc eax, 0x15ff0045
inc ebp
add bh, bh
adc eax, 0x16010045
inc ebp
add byte [ecx], al
push ss
inc ebp
add byte [ecx], al
push ss
inc ebp
add byte [eax], bl
push ss
inc ebp
add ah, ah
adc eax, 0x15e40045
inc ebp
add byte [eax + 0x16], cl
inc ebp
add dh, bl
adc eax, 0x15de0045
inc ebp
add ah, ah
adc eax, 0x162d0045
inc ebp
add byte [ebp - 0x52ffbaeb], ch
adc eax, 0x15ad0045
inc ebp
add byte [ebp - 0x43ffbaeb], ch
adc eax, 0x15bc0045
inc ebp
add byte [ebp + edx + 0x162d0045], bh
inc ebp
add byte [ebp + edx + 0x15bc0045], bh
inc ebp
add byte [ebx], al
push ss
inc ebp
add byte [ebx], al
push ss
inc ebp
add byte [ebx], al
push ss
inc ebp
add byte [ebx], al
push ss
inc ebp
add byte [edi + 0x17], dl
inc ebp
add byte [ebp + 0x17], dl
inc ebp
add ah, cl
int3