Function at 0x446eb0
Capabilities:
Contain obfuscated stackstrings
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x56ca9a
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x204
push ebx
push ebp
push esi
push edi
xor edi, edi
mov dword [esp + 0x50], ecx
mov dword [esp + 0x10], edi
mov ecx, dword [ecx + 4]
cmp ecx, edi
jne 0x446f24
push edi
push edi
push 0xbf
push 0x5c0200
push 0x5c01f0
lea ecx, [esp + 0x150]
call fcn.00430560
push eax
mov dword [esp + 0x220], edi
call fcn.00430640
add esp, 4
lea ecx, [esp + 0x13c]
mov dword [esp + 0x21c], 0xffffffff
call fcn.004305f0
lea ecx, [esp + 0x38]
call fcn.00448510
lea ecx, [esp + 0x14]
mov dword [esp + 0x21c], 1
call fcn.0040d570
lea ecx, [esp + 0x14]
mov byte [esp + 0x21c], 2
call fcn.0040d300
mov esi, dword [esp + 0x224]
push edi
push 0x3c
lea ecx, [esp + 0x2c]
mov eax, dword [esi]
push edi
push ecx
mov ecx, esi
mov byte [esp + 0x22c], 3
call dword [eax + 0x24]
mov ecx, dword [esp + 0x24]
mov edx, dword [esi + 0x1c]
cmp ecx, edi
mov byte [esp + 0x21c], 4
mov dword [esp + 0x48], edx
je 0x446f9d
push 0xffffffffffffffff
push edi
call fcn.004379b0
mov ecx, dword [esp + 0x24]
cmp ecx, edi
je 0x446f9f
mov ecx, dword [ecx + 8]
jmp 0x446fa1
xor eax, eax
xor ecx, ecx
cmp eax, ecx
je 0x447023
lea eax, [esp + 0x24]
lea ecx, [esp + 0x60]
push eax
push 0x5c01d8
push ecx
call fcn.00438380
add esp, 0xc
mov eax, dword [eax]
mov bl, 5
cmp eax, edi
mov byte [esp + 0x21c], bl
je 0x446fd0
mov eax, dword [eax + 0xc]
jmp 0x446fd5
mov eax, dword [0x5bedb0]
push edi
push edi
push 0xc6
push 0x5c0200
push eax
lea ecx, [esp + 0x150]
call fcn.00430560
push eax
mov byte [esp + 0x220], 6
call fcn.00430640
add esp, 4
lea ecx, [esp + 0x13c]
mov byte [esp + 0x21c], bl
call fcn.004305f0
lea ecx, [esp + 0x60]
mov byte [esp + 0x21c], 4
call fcn.00433ef0
lea ecx, [esp + 0x70]
call fcn.0040d570
lea ecx, [esp + 0x70]
mov byte [esp + 0x21c], 7
call fcn.0040d300
mov byte [esp + 0x21c], 8
mov edi, dword [esp + 0x224]
push 1
xor ebp, ebp
push 0x3e
mov edx, dword [edi]
lea eax, [esp + 0xd4]
push ebp
push eax
mov ecx, edi
call dword [edx + 0x24]
push eax
lea ecx, [esp + 0x18]
mov byte [esp + 0x220], 9
call fcn.0040d260
mov eax, dword [eax]
cmp eax, ebp
je 0x44707f
mov esi, dword [eax + 8]
jmp 0x447081
xor esi, esi
lea ecx, [esp + 0xcc]
mov byte [esp + 0x21c], 8
call fcn.00433ef0
cmp esi, ebp
je 0x447fbe
lea ebx, [esi - 1]
cmp ebx, ebp
jne 0x4470aa
cmp dword [esp + 0x14], ebp
je 0x4470c5
push ebx
lea ecx, [esp + 0x18]
call fcn.00433a30
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0xc]
cmp byte [eax + edx], 0x3e
je 0x447149
lea eax, [esp + 0x14]
lea ecx, [esp + 0x12c]
push eax
push 0x5c01c4
push ecx
call fcn.00438380
add esp, 0xc
mov eax, dword [eax]
mov byte [esp + 0x21c], 0xa
cmp eax, ebp
je 0x4470f2
mov eax, dword [eax + 0xc]
jmp 0x4470f7
mov eax, dword [0x5bedb0]
push ebp
push ebp
push 0xcd
push 0x5c0200
push eax
lea ecx, [esp + 0x150]
call fcn.00430560
push eax
mov byte [esp + 0x220], 0xb
call fcn.00430640
add esp, 4
lea ecx, [esp + 0x13c]
mov byte [esp + 0x21c], 0xa
call fcn.004305f0
lea ecx, [esp + 0x12c]
mov byte [esp + 0x21c], 8
call fcn.00433ef0
push 1
lea ecx, [esp + 0x18]
call fcn.00433a30
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0xc]
movsx eax, byte [eax + edx]
cmp al, 0x21
je 0x447c3a
cmp al, 0x2f
je 0x4478d9
cmp al, 0x3f
je 0x447538
mov eax, dword [esp + 0x44]
lea edx, [esp + 0x38]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], edx
mov dword [esp + 0x1c], ebp
cmp eax, ebp
mov byte [esp + 0x21c], 0x27
je 0x44732b
push 0x64
call fcn.0055d252
mov edi, eax
add esp, 4
mov dword [esp + 0x2c], edi
cmp edi, ebp
mov byte [esp + 0x21c], 0x28
je 0x447200
push ebx
lea eax, [esp + 0x170]
push 1
push eax
lea ecx, [esp + 0x20]
call fcn.00437b80
or dword [esp + 0x10], 1
mov eax, dword [eax]
mov byte [esp + 0x21c], 0x29
cmp eax, ebp
je 0x4471f1
mov eax, dword [eax + 0xc]
mov ecx, edi
push eax
call fcn.00446c60
jmp 0x447202
mov eax, dword [0x5bedb0]
mov ecx, edi
push eax
call fcn.00446c60
jmp 0x447202
xor eax, eax
push eax
lea ecx, [esp + 0x20]
mov dword [esp + 0x220], 0x2a
call fcn.0043a0c0
mov al, byte [esp + 0x10]
mov dword [esp + 0x21c], 0x27
test al, 1
je 0x447240
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x16c]
and al, 0xfe
mov dword [esp + 0x10], eax
call fcn.00433ef0
push ecx
mov ecx, dword [esp + 0x20]
cmp ecx, ebp
mov dword [esp + 0x30], esp
mov edi, esp
je 0x447258
call fcn.0043a090
mov ecx, dword [esp + 0x20]
mov dword [edi], ecx
sub esp, 8
lea edx, [esp + 0xc0]
mov ecx, esp
mov dword [esp + 0x2c], esp
push edx
mov byte [esp + 0x22c], 0x27
call fcn.0043e040
lea ecx, [esp + 0x44]
call fcn.00445480
mov ecx, eax
call fcn.0040d5a0
mov ecx, eax
call fcn.00448360
mov eax, dword [esp + 0x14]
add esi, 0xfffffffe
cmp esi, ebp
jne 0x44729e
cmp eax, ebp
je 0x4472d2
cmp esi, ebp
mov edi, esi
je 0x4472c5
jge 0x4472b3
cmp eax, ebp
je 0x4472af
mov edi, dword [eax + 8]
add edi, esi
cmp edi, ebp
jl 0x4472bc
cmp eax, ebp
je 0x4472bc
cmp edi, dword [eax + 8]
jle 0x4472c5
call fcn.004363e0
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0xc]
cmp byte [eax + edi], 0x2f
je 0x44750a
push 0xc
call fcn.0055d252
mov esi, eax
xor ecx, ecx
mov edx, esi
add esp, 4
lea edi, [esi + 8]
mov dword [esp + 0x20], esi
mov dword [edx], ecx
mov dword [esp + 0x2c], edi
mov dword [edx + 4], ecx
mov dword [edx + 8], ecx
cmp edi, ebp
mov byte [esp + 0x21c], 0x2c
je 0x447314
mov ecx, dword [esp + 0x1c]
cmp ecx, ebp
je 0x447312
call fcn.0043a090
mov ecx, dword [esp + 0x1c]
mov dword [edi], ecx
push esi
lea ecx, [esp + 0x3c]
mov byte [esp + 0x220], 0x27
call fcn.0043e950
jmp 0x44750a
add esi, 0xfffffffe
cmp esi, ebp
jne 0x447336
cmp ecx, ebp
je 0x44736a
cmp esi, ebp
mov edi, esi
je 0x44735d
jge 0x44734b
cmp ecx, ebp
je 0x447347
mov edi, dword [ecx + 8]
add edi, esi
cmp edi, ebp
jl 0x447354
cmp ecx, ebp
je 0x447354
cmp edi, dword [ecx + 8]
jle 0x44735d
call fcn.004363e0
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx + 0xc]
cmp byte [eax + edi], 0x2f
je 0x4474c8
push 0xffffffffffffffff
lea ecx, [esp + 0xa8]
push 1
push ecx
lea ecx, [esp + 0x20]
call fcn.00437b80
mov eax, dword [esp + 0xa4]
mov byte [esp + 0x21c], 0x2d
cmp eax, ebp
je 0x447397
mov eax, dword [eax + 0xc]
jmp 0x44739c
mov eax, dword [0x5bedb0]
lea edx, [esp + 0x98]
push edx
push eax
lea eax, [esp + 0xec]
push eax
call fcn.00446da0
add esp, 0xc
mov edi, dword [esp + 0x50]
mov ecx, dword [eax]
cmp ecx, ebp
mov byte [esp + 0x21c], 0x2e
lea esi, [edi + 8]
je 0x4473e6
mov edx, dword [ecx]
lea eax, [esp + 0x9c]
push 1
push eax
call dword [edx + 0x18]
or dword [esp + 0x10], 2
mov byte [esp + 0x21c], 0x2f
push eax
mov ecx, esi
call fcn.0043a110
mov al, byte [esp + 0x10]
mov dword [esp + 0x21c], 0x2e
test al, 2
je 0x447417
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x9c]
and al, 0xfd
mov dword [esp + 0x10], eax
call fcn.00441570
mov eax, dword [esi]
cmp eax, ebp
je 0x447422
mov eax, dword [eax + 0xc]
jmp 0x447427
mov eax, dword [0x5bedb0]
lea ecx, [esp + 0xe4]
mov dword [esi + 4], eax
mov byte [esp + 0x21c], 0x2d
call fcn.00433ef0
mov edx, dword [esp + 0x98]
lea ecx, [edi + 0x10]
push 1
push ecx
push edx
call fcn.00446530
add esp, 0xc
lea ecx, [esp + 0x1c]
push edi
call fcn.0043a0c0
push 0xc
call fcn.0055d252
mov esi, eax
xor eax, eax
mov ecx, esi
add esp, 4
lea edi, [esi + 8]
mov dword [esp + 0x20], esi
mov dword [ecx], eax
mov dword [esp + 0x2c], edi
mov dword [ecx + 4], eax
mov dword [ecx + 8], eax
cmp edi, ebp
mov byte [esp + 0x21c], 0x30
je 0x4474a0
mov ecx, dword [esp + 0x1c]
cmp ecx, ebp
je 0x44749e
call fcn.0043a090
mov ecx, dword [esp + 0x1c]
mov dword [edi], ecx
push esi
lea ecx, [esp + 0x3c]
mov byte [esp + 0x220], 0x2d
call fcn.0043e950
lea ecx, [esp + 0xa4]
mov byte [esp + 0x21c], 0x27
call fcn.00433ef0
jmp 0x44750a
push ebp
push ebp
push 0x12c
push 0x5c0200
push 0x5c01b0
lea ecx, [esp + 0x198]
call fcn.00430560
push eax
mov byte [esp + 0x220], 0x31
call fcn.00430640
add esp, 4
lea ecx, [esp + 0x184]
mov byte [esp + 0x21c], 0x27
call fcn.004305f0
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x1c]
inc edx
mov byte [esp + 0x21c], 8
mov dword [eax + 0x60], edx
mov ecx, dword [esp + 0x1c]
cmp ecx, ebp
mov dword [esp + 0x1c], ebp
je 0x447847
call fcn.0043a0a0
jmp 0x447847
cmp esi, 4
jl 0x44758c
push esi
add esi, 0xfffffffe
lea ecx, [esp + 0x158]
push esi
push ecx
lea ecx, [esp + 0x20]
call fcn.00437b80
push 0xffffffffffffffff
push 0x5c01ac
push eax
mov byte [esp + 0x228], 0xc
call fcn.00437290
add esp, 0xc
lea ecx, [esp + 0x154]
test eax, eax
setne bl
mov byte [esp + 0x21c], 8
call fcn.00433ef0
test bl, bl
je 0x44766e
mov edx, dword [edi]
push 1
push 0x3e
lea eax, [esp + 0x80]
push ebp
push eax
mov ecx, edi
call dword [edx + 0x24]
mov eax, dword [esp + 0x78]
mov byte [esp + 0x21c], 0xd
cmp eax, ebp
je 0x4475b9
cmp dword [eax + 8], ebp
jne 0x44763d
lea ecx, [esp + 0x14]
lea edx, [esp + 0xf4]
push ecx
push 0x5c0198
push edx
call fcn.00438380
add esp, 0xc
mov eax, dword [eax]
mov byte [esp + 0x21c], 0xe
cmp eax, ebp
je 0x4475e6
mov eax, dword [eax + 0xc]
jmp 0x4475eb
mov eax, dword [0x5bedb0]
push ebp
push ebp
push 0xd8
push 0x5c0200
push eax
lea ecx, [esp + 0x1c8]
call fcn.00430560
push eax
mov byte [esp + 0x220], 0xf
call fcn.00430640
add esp, 4
lea ecx, [esp + 0x1b4]
mov byte [esp + 0x21c], 0xe
call fcn.004305f0
lea ecx, [esp + 0xf4]
mov byte [esp + 0x21c], 0xd
call fcn.00433ef0
lea eax, [esp + 0x78]
lea ecx, [esp + 0x14]
push eax
call fcn.00437ac0
mov eax, dword [eax]
cmp eax, ebp
je 0x447656
mov esi, dword [eax + 8]
jmp 0x447658
xor esi, esi
lea ecx, [esp + 0x78]
mov byte [esp + 0x21c], 8
call fcn.00433ef0
jmp 0x447538
push 0xffffffffffffffff
lea ecx, [esp + 0xb0]
push 2
push ecx
lea ecx, [esp + 0x20]
call fcn.00437b80
mov eax, dword [esp + 0xac]
mov byte [esp + 0x21c], 0x10
cmp eax, ebp
je 0x44769b
mov eax, dword [eax + 0xc]
jmp 0x4476a0
mov eax, dword [0x5bedb0]
lea edx, [esp + 0xa0]
push edx
push eax
lea eax, [esp + 0xc4]
push eax
call fcn.00446da0
add esp, 0xc
lea ecx, [esp + 0x17c]
mov byte [esp + 0x21c], 0x11
push ecx
lea ecx, [esp + 0xc0]
call fcn.00443710
push 0xffffffffffffffff
push 0x5c0194
push eax
mov byte [esp + 0x228], 0x12
call fcn.00437290
add esp, 0xc
lea ecx, [esp + 0x17c]
test eax, eax
sete bl
mov byte [esp + 0x21c], 0x11
call fcn.00433ef0
test bl, bl
je 0x44781f
mov edx, dword [esp + 0x50]
mov eax, dword [esp + 0xa0]
push 1
lea esi, [edx + 0x10]
push esi
push eax
call fcn.00446530
add esp, 0xc
lea ecx, [esp + 0xc4]
push ecx
mov ecx, esi
call fcn.0043ed40
mov eax, dword [esp + 0xc4]
mov edx, dword [esp + 0xc8]
cmp eax, ebp
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], edx
je 0x44781f
test eax, eax
je 0x44775f
cmp esi, dword [esp + 0x34]
je 0x44776d
push esi
lea ecx, [esp + 0x34]
call fcn.0043e7c0
mov eax, dword [esp + 0x30]
add eax, 0x10
push 0xffffffffffffffff
push 0x5c0188
push eax
call fcn.00437290
add esp, 0xc
test eax, eax
jne 0x447809
mov eax, dword [esp + 0x30]
test eax, eax
je 0x447796
cmp esi, dword [esp + 0x34]
je 0x4477a0
push esi
lea ecx, [esp + 0x34]
call fcn.0043e7c0
mov ecx, dword [esp + 0x30]
lea eax, [esp + 0x90]
push eax
add ecx, 0x18
call fcn.00433890
lea edx, [esp + 0x70]
push 0xffffffffffffffff
lea eax, [esp + 0x94]
push edx
push eax
mov byte [esp + 0x228], 0x13
call fcn.00437240
add esp, 0xc
test eax, eax
je 0x4477f5
lea ecx, [esp + 0x90]
push ecx
lea ecx, [esp + 0x74]
call fcn.0040d260
mov ecx, dword [esp + 0x224]
push eax
call fcn.00449930
lea ecx, [esp + 0x90]
mov byte [esp + 0x21c], 0x11
call fcn.00433ef0
mov eax, dword [esp + 0x30]
test eax, eax
je 0x44781f
mov eax, dword [eax]
test eax, eax
mov dword [esp + 0x30], eax
jne 0x447759
lea ecx, [esp + 0xbc]
mov byte [esp + 0x21c], 0x10
call fcn.00433ef0
mov byte [esp + 0x21c], 8
lea ecx, [esp + 0xac]
call fcn.00433ef0
mov ecx, dword [esp + 0x224]
push 0
push 0x3c
lea edx, [esp + 0x114]
mov eax, dword [ecx]
push 0
push edx
call dword [eax + 0x24]
mov ecx, dword [eax]
mov byte [esp + 0x21c], 0x32
test ecx, ecx
je 0x447888
mov eax, dword [ecx]
lea edx, [esp + 0x5c]
push 1
push edx
call dword [eax + 0x18]
or dword [esp + 0x10], 4
mov byte [esp + 0x21c], 0x33
push eax
lea ecx, [esp + 0x28]
call fcn.0043a110
mov al, byte [esp + 0x10]
mov dword [esp + 0x21c], 0x32
test al, 4
je 0x4478c5
mov ecx, dword [esp + 0x10]
and ecx, 0xfffffffb
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x5c]
test ecx, ecx
mov dword [esp + 0x5c], 0
je 0x4478c5
call fcn.0043a0a0
mov eax, dword [esp + 0x24]
test eax, eax
je 0x447de0
mov ecx, dword [eax + 0xc]
jmp 0x447de6
push 0xffffffffffffffff
lea edx, [esp + 0x108]
push 2
push edx
lea ecx, [esp + 0x20]
call fcn.00437b80
mov eax, dword [eax]
mov byte [esp + 0x21c], 0x19
cmp eax, ebp
je 0x447901
mov eax, dword [eax + 0xc]
jmp 0x447906
mov eax, dword [0x5bedb0]
push eax
lea eax, [esp + 0x84]
push eax
call fcn.00448020
add esp, 8
lea ecx, [esp + 0x104]
mov byte [esp + 0x21c], 0x1b
call fcn.00433ef0
mov eax, dword [esp + 0x44]
lea ecx, [esp + 0x38]
cmp eax, ebp
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], ecx
je 0x447be4
sub esp, 8
lea edx, [esp + 0x5c]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
call fcn.0043e040
lea ecx, [esp + 0x40]
call fcn.00445480
mov ecx, eax
call fcn.0040d5a0
lea ecx, [esp + 0x80]
add eax, 8
push 0xffffffffffffffff
push ecx
push eax
call fcn.00437240
add esp, 0xc
test eax, eax
je 0x447bc2
mov edx, dword [esp + 0x48]
lea ecx, [esp + 0xec]
inc edx
push edx
call fcn.004381e0
push eax
lea eax, [esp + 0xe0]
push 0x5ba3f4
push eax
mov byte [esp + 0x228], 0x1c
call fcn.00438380
mov esi, eax
lea ecx, [esp + 0x8c]
lea edx, [esp + 0xe0]
push ecx
push 0x5ba3f4
push edx
mov byte [esp + 0x234], 0x1d
call fcn.00438380
mov edi, eax
add esp, 0x10
lea eax, [esp + 0x5c]
mov ecx, esp
mov dword [esp + 0x28], esp
push eax
mov byte [esp + 0x228], 0x1e
call fcn.0043e040
lea ecx, [esp + 0x40]
call fcn.00445480
mov ecx, eax
call fcn.0040d5a0
mov ecx, eax
call fcn.00448770
push eax
lea ecx, [esp + 0x138]
call fcn.004381e0
push eax
lea ecx, [esp + 0x160]
push 0x5ba3f4
push ecx
mov byte [esp + 0x228], 0x1f
call fcn.00438380
mov ebp, eax
add esp, 4
lea edx, [esp + 0x5c]
mov ecx, esp
mov dword [esp + 0x28], esp
push edx
mov byte [esp + 0x228], 0x20
call fcn.0043e040
lea ecx, [esp + 0x40]
call fcn.00445480
mov ecx, eax
call fcn.0040d5a0
add eax, 8
push eax
lea eax, [esp + 0x128]
push 0x5c0170
push eax
call fcn.00438380
add esp, 0xc
lea ecx, [esp + 0x174]
push ebp
push ecx
mov ecx, eax
mov byte [esp + 0x224], 0x21
call fcn.00437bb0
lea edx, [esp + 0x114]
push edi
push edx
mov ecx, eax
mov byte [esp + 0x224], 0x22
call fcn.00437bb0
lea ecx, [esp + 0x164]
push esi
push ecx
mov ecx, eax
mov byte [esp + 0x224], 0x23
call fcn.00437bb0
push 0
push 0
push 0x10d
push 0x5c0200
mov ecx, eax
mov byte [esp + 0x22c], 0x24
call fcn.00448050
push eax
lea ecx, [esp + 0x1f8]
call fcn.00430560
push eax
mov byte [esp + 0x220], 0x25
call fcn.00430640
add esp, 4
lea ecx, [esp + 0x1e4]
mov byte [esp + 0x21c], 0x24
call fcn.004305f0
lea ecx, [esp + 0x164]
mov byte [esp + 0x21c], 0x23
call fcn.00433ef0
lea ecx, [esp + 0x114]
mov byte [esp + 0x21c], 0x22
call fcn.00433ef0
lea ecx, [esp + 0x174]
mov byte [esp + 0x21c], 0x21
call fcn.00433ef0
lea ecx, [esp + 0x124]
mov byte [esp + 0x21c], 0x20
call fcn.00433ef0
lea ecx, [esp + 0x15c]
mov byte [esp + 0x21c], 0x1f
call fcn.00433ef0
lea ecx, [esp + 0x134]
mov byte [esp + 0x21c], 0x1e
call fcn.00433ef0
lea ecx, [esp + 0xd4]
mov byte [esp + 0x21c], 0x1d
call fcn.00433ef0
lea ecx, [esp + 0xdc]
mov byte [esp + 0x21c], 0x1c
call fcn.00433ef0
lea ecx, [esp + 0xec]
mov byte [esp + 0x21c], 0x1b
call fcn.00433ef0
lea edx, [esp + 0x54]
lea ecx, [esp + 0x38]
push edx
call fcn.0043e990
mov byte [esp + 0x21c], 8
lea ecx, [esp + 0x80]
jmp 0x447842
push ebp
push ebp
push 0x112
push 0x5c0200
push 0x5c015c
lea ecx, [esp + 0x1b0]
call fcn.00430560
push eax
mov byte [esp + 0x220], 0x26
call fcn.00430640
add esp, 4
lea ecx, [esp + 0x19c]
mov byte [esp + 0x21c], 0x1b
call fcn.004305f0
mov byte [esp + 0x21c], 8
lea ecx, [esp + 0x80]
jmp 0x447842
push 2
lea ecx, [esp + 0x18]
call fcn.00433a30
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0xc]
cmp byte [eax + edx], 0x2d
jne 0x447847
push 3
lea ecx, [esp + 0x18]
call fcn.00433a30
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx + 0xc]
cmp byte [eax + edx], 0x2d
jne 0x447847
cmp esi, 7
jl 0x447cc7
add esi, 0xfffffffd
push 0xffffffffffffffff
lea eax, [esp + 0x100]
push esi
push eax
lea ecx, [esp + 0x20]
call fcn.00437b80
push 0xffffffffffffffff
push 0x5c0158
push eax
mov byte [esp + 0x228], 0x14
call fcn.00437290
add esp, 0xc
lea ecx, [esp + 0xfc]
test eax, eax
setne bl
mov byte [esp + 0x21c], 8
call fcn.00433ef0
test bl, bl
je 0x447847
mov ecx, dword [esp + 0x224]
push 1
push 0x3e
lea eax, [esp + 0x90]
mov edx, dword [ecx]
push 0
push eax
call dword [edx + 0x24]
mov eax, dword [esp + 0x88]
mov byte [esp + 0x21c], 0x15
test eax, eax
je 0x447cff
mov ecx, dword [eax + 8]
test ecx, ecx
jne 0x447da9
lea ecx, [esp + 0x68]
call fcn.0040d570
lea ecx, [esp + 0x68]
mov byte [esp + 0x21c], 0x16
call fcn.0040d300
mov eax, dword [esp + 0x14]
mov byte [esp + 0x21c], 0x17
test eax, eax
je 0x447d2e
mov eax, dword [eax + 0xc]
jmp 0x447d33
mov eax, dword [0x5bedb0]
push eax
lea ecx, [esp + 0x6c]
push 0x5c0140
push ecx
call fcn.00435fd0
mov eax, dword [esp + 0x74]
add esp, 0xc
test eax, eax
je 0x447d53
mov eax, dword [eax + 0xc]
jmp 0x447d58
mov eax, dword [0x5bedb0]
push 0
push 0
push 0xfc
push 0x5c0200
push eax
lea ecx, [esp + 0x1e0]
call fcn.00430560
push eax
mov byte [esp + 0x220], 0x18
call fcn.00430640
add esp, 4
lea ecx, [esp + 0x1cc]
mov byte [esp + 0x21c], 0x17
call fcn.004305f0
lea ecx, [esp + 0x68]
mov byte [esp + 0x21c], 0x15
call fcn.00433ef0
lea edx, [esp + 0x88]
lea ecx, [esp + 0x14]
push edx
call fcn.00437ac0
mov eax, dword [eax]
test eax, eax
je 0x447dc5
mov esi, dword [eax + 8]
jmp 0x447dc7
xor esi, esi
lea ecx, [esp + 0x88]
mov byte [esp + 0x21c], 8
call fcn.00433ef0
jmp 0x447c72
mov ecx, dword [0x5bedb0]
test eax, eax
mov dword [esp + 0x28], ecx
jne 0x447df2
xor bl, bl
jmp 0x447df7
mov eax, dword [eax + 0xc]
mov bl, byte [eax]
lea ecx, [esp + 0x10c]
mov byte [esp + 0x21c], 8
call fcn.00433ef0
test bl, bl
je 0x447045
mov ecx, dword [esp + 0x224]
mov eax, dword [esp + 0x44]
test eax, eax
mov edx, dword [ecx + 0x1c]
lea ecx, [esp + 0x38]
mov dword [esp + 0x48], edx
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], ecx
je 0x447f09
sub esp, 8
mov esi, esp
mov dword [esp + 0x28], esp
mov dword [esp + 0x34], esi
mov dword [esi], 0
mov edx, dword [0x5bedb0]
mov dword [esi + 4], edx
mov ecx, dword [esp + 0x2c]
mov byte [esp + 0x224], 0x34
test ecx, ecx
je 0x447e80
mov eax, dword [ecx]
lea edx, [esp + 0x54]
push 1
push edx
call dword [eax + 0x18]
or dword [esp + 0x18], 8
mov byte [esp + 0x224], 0x35
jmp 0x447e84
lea eax, [esp + 0x2c]
push eax
mov ecx, esi
call fcn.0043a110
mov al, byte [esp + 0x18]
mov dword [esp + 0x224], 0x34
test al, 8
je 0x447ebf
mov ecx, dword [esp + 0x18]
and ecx, 0xfffffff7
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x54]
test ecx, ecx
mov dword [esp + 0x54], 0
je 0x447ebf
call fcn.0043a0a0
mov eax, dword [esi]
test eax, eax
je 0x447eca
mov eax, dword [eax + 0xc]
jmp 0x447ecf
mov eax, dword [0x5bedb0]
mov dword [esi + 4], eax
sub esp, 8
lea eax, [esp + 0x70]
mov ecx, esp
mov dword [esp + 0x3c], esp
push eax
mov byte [esp + 0x230], 8
call fcn.0043e040
lea ecx, [esp + 0x48]
call fcn.00445480
mov ecx, eax
call fcn.0040d5a0
mov ecx, eax
call fcn.00448590
jmp 0x447045
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x447f27
push 0xffffffffffffffff
push 0
call fcn.004379b0
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x447f29
mov ecx, dword [ecx + 8]
jmp 0x447f2b
xor eax, eax
xor ecx, ecx
cmp eax, ecx
je 0x447045
lea ecx, [esp + 0x24]
lea edx, [esp + 0x11c]
push ecx
push 0x5c01d8
push edx
call fcn.00438380
add esp, 0xc
mov eax, dword [eax]
mov byte [esp + 0x21c], 0x37
test eax, eax
je 0x447f60
mov eax, dword [eax + 0xc]
jmp 0x447f65
mov eax, dword [0x5bedb0]
push 0
push 0
push 0x13b
push 0x5c0200
push eax
lea ecx, [esp + 0x210]
call fcn.00430560
push eax
mov byte [esp + 0x220], 0x38
call fcn.00430640
add esp, 4
lea ecx, [esp + 0x1fc]
mov byte [esp + 0x21c], 0x37
call fcn.004305f0
lea ecx, [esp + 0x11c]
mov byte [esp + 0x21c], 8
call fcn.00433ef0
jmp 0x447045
lea ecx, [esp + 0x70]
mov byte [esp + 0x21c], 4
call fcn.00433ef0
lea ecx, [esp + 0x24]
mov byte [esp + 0x21c], 3
call fcn.00433ef0
lea ecx, [esp + 0x14]
mov byte [esp + 0x21c], 1
call fcn.00433ef0
lea ecx, [esp + 0x38]
mov dword [esp + 0x21c], 0xffffffff
call fcn.0043e900
mov ecx, dword [esp + 0x214]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x210
ret 4